Sdílet prostřednictvím


XamlReader Třída

Definice

Poskytuje základní definice pro třídy, které využívají vstup XAML a vytvářejí streamy uzlů XAML.

public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
    interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
Dědičnost
XamlReader
Odvozené
Implementuje

Poznámky

XamlReader je abstraktní třída a neposkytuje implementace ani definice, které mají funkční výsledek pro všechny členy. Členové, kteří mají implementaci, XamlReader jsou uvedeni v poznámkách daného člena. Konkrétně má několik abstraktních členů, XamlReader které je potřeba implementovat, a několik virtuálních členů.

Z virtuálních členů ReadSubtree a Skip každý z nich poskytuje výchozí implementaci, která je vhodná pro většinu případů. ReadSubtree Výchozí implementace Skip ale spoléhají na jiné očekávané chování implementační čtečky XAML, zejména na Read přepsání. Dispose je také virtuální člen, který má funkční výchozí implementaci.

Následující dvě třídy jsou nejrelevantní a praktické odvozené třídy v .NET Framework XAML Services a sestavení System.Xaml:

  • XamlObjectReader, který čte objektový graf, například aktivní objektový graf aplikace za běhu.

  • XamlXmlReader, který čte XAML ve formě textového souboru XML pomocí obecného XmlReader , který načte soubor jako zprostředkující pomocnou třídu.

Ostatní čtenáři XAML z jiných architektur zahrnují Baml2006Reader a XamlDebuggerXmlReader.

XamlReader liší se od principů MODELU DOM (Document Object Model) a XmlReader návrhu XML, protože XamlReader nemá metodu Create pro vrácení základních výchozích implementací čtečky XAML. Místo toho je nutné vytvořit instanci konkrétních odvozených tříd čtečky XAML voláním jejich konstruktorů nebo jiných pomocných rozhraní API specifických pro třídu.

Čtenáři podstromů

Ve většině případů voláte XamlReader rozhraní API v kontextu konkrétních tříd čtečky XAML, které jsou odvozeny od XamlReader. V jednom konkrétním případě však přistupujete k XamlReader rozhraní API v praktické instanci čtenáře XAML, která není veřejná a není odvozena z XamlObjectReader nebo XamlXmlReader. Tento případ nastane, když zavoláte ReadSubtree, který vrátí XamlReader instanci. Ve výchozí implementaci XamlReader je vrácená tímto rozhraním API interní třídou.

Získané XamlReader pro čtení podstromů mají platné akce pro rozhraní API, jako Read jsou a NodeTypea tyto akce jsou založeny na nadřazené třídě čtenáře. Tento návrh umožňuje interní třídě sledovat úroveň rámce, ve které byl podstrom zadán. Aktivní podstrom XamlReader zajišťuje, že pokud je aktuální pozice uzlu přesunuta mimo hranice podstromu, konkrétní čtečka podstromů hlásí konec souboru nebo null aktuální uzel.

Poznámky k použití podstromů jsou součástí určitých XamlReader rozhraní API.

Konstruktory

Name Description
XamlReader()

Inicializuje XamlReader třídu.

Vlastnosti

Name Description
IsDisposed

Získá, zda Dispose(Boolean) byl volána.

IsEof

Při implementaci v odvozené třídě získá hodnotu, která hlásí, zda je pozice čtenáře na konci souboru.

Member

Při implementaci v odvozené třídě získá aktuální člen na pozici čtenáře, pokud je pozice čtenáře na .StartMember

Namespace

Při implementaci v odvozené třídě získá informace o oboru názvů XAML z aktuálního uzlu.

NodeType

Při implementaci v odvozené třídě získá typ aktuálního uzlu.

SchemaContext

Při implementaci v odvozené třídě získá objekt, který poskytuje informace o kontextu schématu XAML pro sadu informací.

Type

Při implementaci v odvozené třídě získá XamlType aktuální uzel.

Value

Při implementaci v odvozené třídě získá hodnotu aktuálního uzlu.

Metody

Name Description
Close()

Zavře datový proud uzlu XAML.

Dispose(Boolean)

Uvolní nespravované prostředky používané XamlReadernástrojem a volitelně uvolní spravované prostředky.

Equals(Object)

Určuje, zda je zadaný objekt roven aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí funkce hash.

(Zděděno od Object)
GetType()

Získá Type aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Object.

(Zděděno od Object)
Read()

Při implementaci v odvozené třídě poskytuje další uzel XAML ze zdroje, pokud je uzel k dispozici.

ReadSubtree()

XamlReader Vrátí hodnotu založenou na aktuálním XamlReaderobjektu, kde vrácený XamlReader objekt slouží k iteraci podstrom struktury uzlu XAML.

Skip()

Přeskočí aktuální uzel a posune pozici čtenáře na další uzel.

ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

Name Description
IDisposable.Dispose()

Uvolní všechny prostředky používané aktuální instancí XamlReader třídy.

Platí pro

Viz také