XamlReader.ReadSubtree Metoda

Definice

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

public:
 virtual System::Xaml::XamlReader ^ ReadSubtree();
public virtual System.Xaml.XamlReader ReadSubtree ();
abstract member ReadSubtree : unit -> System.Xaml.XamlReader
override this.ReadSubtree : unit -> System.Xaml.XamlReader
Public Overridable Function ReadSubtree () As XamlReader

Návraty

XamlReader

Nová instance čtečky XAML pro podstrom

Poznámky

Tato metoda má výchozí implementaci a vrátí platnou XamlReader. Vrácená XamlReader je interní třída, která omezuje určité XamlReader akce. Omezení jsou konzistentní s účelem čtení pouze kótovaného podstromu většího zdroje pro sadu uzlů XAML a vrácení koncového souboru nebo null aktuálního uzlu při ukončení podstromu.

Obecně platí, že byste měli zkontrolovat aktuální uzel z počátečního Read uzlu a zjistit, jestli potřebujete čtečku podstromů. Postup kontroly může být specifický pro implementaci; vyhněte se ale vytváření více čtenářů podstromů pro každý podstrom. Kromě toho se vyhněte vyvolání čtečky podstromů pro určité případy uzlu (například pro NamespaceDeclaration), které nesmí obsahovat podstrom uzlů.

Po získání čtečky podstromů je nutné ho volat Read , abyste získali aktuální uzel (nebo volání Skip pro získání dalšího uzlu). Při vytváření se automaticky nezískat pozice počátečního uzlu od čtenáře podstromů.

Čtenář, který získáte voláním ReadSubtree z této výchozí implementace, je interní třída. Interní třída vychází z chování XamlReader implementace, která se používá při ReadSubtree zavolání. Účelem interní třídy je zabalit Read a obecné procházení chování. Procházení zůstane v zamýšleném podstromu tím, že sleduje StartMember/EndMember páry nebo StartObject/EndObject páry. Správně se vrátí false také pro Read a true pro IsEof to, kdy je čtenář na konci podstromu, jak je definováno vstupním bodem. Obecně se předpokládá, že jakékoli XamlReader rozhraní API, které voláte ze čtečky podstromů, má stejnou implementaci jako celková XamlReader s výjimkou chování procházení.

ReadSubtree Je ale virtuální. XamlReader Konkrétní implementace proto může poskytovat chování, které se liší od interního XamlReader chování obálky. XamlReader Implementace může dokonce zakázat funkce čtečky podstromů vrácením NotImplementedException nebo jinými výjimkami.

Platí pro