XamlReader.ReadSubtree Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengembalikan XamlReader yang didasarkan pada saat ini XamlReader, di mana yang dikembalikan XamlReader digunakan untuk melakukan iterasi melalui subtree struktur simpul 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
Mengembalikan
Instans pembaca XAML baru untuk subtree.
Keterangan
Metode ini memiliki implementasi default dan mengembalikan XamlReader. yang dikembalikan XamlReader adalah kelas internal yang membatasi tindakan tertentu XamlReader . Pembatasan konsisten dengan tujuan membaca hanya subtree dimensi sumber yang lebih besar untuk set simpul XAML, dan mengembalikan akhir file atau null pada simpul saat ini ketika subtree keluar.
Umumnya, Anda harus memeriksa simpul saat ini dari awal Read untuk menentukan apakah Anda memerlukan pembaca subtree. Bagaimana Anda memeriksa ini mungkin spesifik implementasi; namun, hindari membuat beberapa pembaca subtree untuk setiap subtree. Selain itu, hindari memanggil pembaca subtree untuk kasus node tertentu (misalnya, untuk NamespaceDeclaration) yang tidak dapat berisi subtree simpul.
Setelah Anda mendapatkan pembaca subtree, Anda harus memanggilnya Read untuk mendapatkan node saat ini (atau memanggil Skip untuk mendapatkan simpul berikutnya). Anda tidak secara otomatis mendapatkan posisi node awal dari pembaca subtree saat Anda membuatnya.
Pembaca yang Anda peroleh dengan memanggil ReadSubtree dari implementasi default ini adalah kelas internal. Kelas internal mendasarkan perilakunya pada XamlReader implementasi yang digunakan saat ReadSubtree dipanggil. Tujuan dari kelas internal adalah untuk membungkus Read perilaku traversal umum dan . Traversal tetap berada dalam subtree yang dimaksudkan dengan melacak StartMember/EndMember pasangan atau StartObject/EndObject pasangan. Ini juga mengembalikan false dengan benar untuk Read dan trueIsEof ketika pembaca berada di akhir subtree, seperti yang didefinisikan oleh titik masuknya. Secara umum, Anda berasumsi bahwa API apa pun XamlReader yang Anda panggil dari pembaca subtree memiliki implementasi yang sama dengan keseluruhan XamlReader kecuali untuk perilaku pembatas traversal.
Namun, ReadSubtree bersifat virtual. Oleh karena itu, implementasi tertentu XamlReader dapat memberikan perilaku yang berbeda dari XamlReader perilaku pembungkus internal; dan XamlReader implementasi bahkan dapat menonaktifkan fungsionalitas pembaca subtree dengan mengembalikan NotImplementedException atau pengecualian lainnya.