XamlXmlWriter Kelas

Definisi

Menggunakan kelas atau XmlWriter dukungan untuk menulis aliran simpul XAML ke formulir yang diserialisasikan TextWriter teks atau markup.

public ref class XamlXmlWriter : System::Xaml::XamlWriter
public class XamlXmlWriter : System.Xaml.XamlWriter
type XamlXmlWriter = class
    inherit XamlWriter
Public Class XamlXmlWriter
Inherits XamlWriter
Warisan
XamlXmlWriter

Keterangan

Kelas ini biasanya digunakan dalam skenario serialisasi.

Cara Menggunakan XamlXmlWriter

XamlWriter API memiliki beberapa metode yang menulis berbagai jenis node XAML. Secara kolektif, ini disebut dalam dokumentasi sebagai Write metode dari XamlWriter. XamlXmlWriter menggunakan beberapa kelas status internal untuk menentukan apa yang harus dilakukan ketika salah satu implementasinya Write dipanggil. Panggilan Write menggunakan status untuk menentukan apakah elemen, atribut, atau nilai yang diminta dapat ditulis, atau apakah pengecualian dilemparkan. Misalnya, jika Anda memanggil WriteEndObject dan status posisi simpul XamlXmlWriter saat ini berada pada nilai atau dalam anggota, pengecualian akan dilemparkan. Biasanya, penelepon XamlXmlWriter API harus mengetahui jenis node XAML saat ini yang berasal dari pembaca XAML dan aliran simpul XAML. Berdasarkan pengetahuan ini, penelepon harus menghindari panggilan Write API yang tidak relevan dengan jenis node saat ini.

Namespace XAML dan XamlXmlWriter

Perilaku penulisan XamlXmlWriter namespace XAML rumit dan tidak terbatas pada panggilan eksplisit ke WriteNamespace. Sebaliknya, panggilan lain Write , seperti WriteStartObject, mungkin mengharuskan deklarasi namespace ditulis pada titik tertentu dalam struktur simpul. Penulis XAML menghasilkan awalan dengan logikanya sendiri, atau menggunakan informasi dari INamespacePrefixLookup layanan untuk menentukan awalan pilihan. Selain itu, panggilan eksplisit WriteNamespace mungkin menunggak atau mungkin tidak mengembalikan apa pun jika deklarasi namespace XAML sudah berlaku dan dinyatakan di tempat lain.

Tulis Pengecualian Metode

Pengecualian yang dilemparkan oleh XamlXmlWriterWrite metode biasanya baik InvalidOperationException atau XamlXmlWriterException.

Sering InvalidOperationException menunjukkan bahwa pembaca XAML meneruskan struktur simpul yang tidak valid ke aliran simpul XAML. Dalam hal ini struktur simpul tidak valid karena alasan yang tidak terkait dengan validasi skema XAML atau konteks skema XAML. Sebaliknya, aliran simpul tidak valid dalam bentuk dasarnya. Misalnya, jika implementasi pembaca XAML yang rusak menghasilkan aliran simpul XAML yang berisi dua simpul berturut-turut StartObject , upaya untuk memanggil yang kedua WriteStartObject akan melemparkan InvalidOperationException. Semua penulis XAML akan menganggap operasi seperti itu tidak valid. Contoh lain dari adalah InvalidOperationException ketika informasi namespace XAML tidak tersedia melalui konteks skema XAML yang berlaku untuk posisi aliran simpul saat ini.

Menunjukkan XamlXmlWriterException pengecualian di mana implementasi penulis XAML khusus ini memilih untuk melemparkan pengecualian berdasarkan fungsionalitas yang dimaksudkan. Dapat XamlXmlWriterException menunjukkan kasus tertentu di mana XamlXmlWriter melanggar status atau pengaturannya sendiri. Misalnya, XamlXmlWriterException mungkin dihasilkan dari upaya untuk menulis informasi namespace XAML ke dalam posisi yang XamlXmlWriter tidak didukung dan format serialisasinya, atau menulis anggota duplikat saat instans XamlXmlWriterSettings melarangnya.

Konstruktor

Nama Deskripsi
XamlXmlWriter(Stream, XamlSchemaContext, XamlXmlWriterSettings)

Menginisialisasi instans XamlXmlWriter baru kelas dari aliran menggunakan objek pengaturan penulis.

XamlXmlWriter(Stream, XamlSchemaContext)

Menginisialisasi instans XamlXmlWriter baru kelas dari aliran.

XamlXmlWriter(TextWriter, XamlSchemaContext, XamlXmlWriterSettings)

Menginisialisasi instans XamlXmlWriter baru kelas dari TextWriter dasar menggunakan objek pengaturan.

XamlXmlWriter(TextWriter, XamlSchemaContext)

Menginisialisasi instans XamlXmlWriter baru kelas dari TextWriter dasar.

XamlXmlWriter(XmlWriter, XamlSchemaContext, XamlXmlWriterSettings)

Menginisialisasi instans XamlXmlWriter baru kelas dari XmlWriter dasar menggunakan objek pengaturan.

XamlXmlWriter(XmlWriter, XamlSchemaContext)

Menginisialisasi instans XamlXmlWriter baru kelas dari XmlWriter dasar.

Properti

Nama Deskripsi
IsDisposed

Mendapatkan apakah Dispose(Boolean) telah dipanggil.

(Diperoleh dari XamlWriter)
SchemaContext

Mendapatkan konteks skema XAML yang digunakan ini XamlXmlWriter untuk diproses.

Settings

Mendapatkan pengaturan penulis yang digunakan ini XamlXmlWriter untuk pemrosesan XAML.

Metode

Nama Deskripsi
Close()

Menutup objek penulis XAML.

(Diperoleh dari XamlWriter)
Dispose(Boolean)

Merilis sumber daya yang tidak dikelola yang digunakan oleh XamlXmlWriter dan secara opsional merilis sumber daya terkelola.

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Flush()

Memanggil metode yang mendasar FlushXmlWriter atau TextWriter, yang menulis apa pun yang saat ini ada di buffer, dan kemudian menutup penulis.

GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
WriteEndMember()

Menulis simpul anggota akhir XAML ke yang mendasar XmlWriter atau TextWriter. Memberikan pengecualian jika posisi aliran simpul XAML saat ini tidak berada dalam anggota, atau jika status penulis internal tidak mendukung penulisan kepada anggota akhir.

WriteEndObject()

Menulis simpul objek akhir XAML ke yang mendasar XmlWriter atau TextWriter. Memberikan pengecualian jika posisi aliran simpul XAML saat ini yang sedang diproses tidak kompatibel dengan penulisan objek akhir.

WriteGetObject()

Menulis objek untuk kasus di mana objek yang ditentukan adalah nilai default atau implisit dari properti yang sedang ditulis, alih-alih ditentukan sebagai nilai objek dalam set simpul XAML input.

WriteNamespace(NamespaceDeclaration)

Menulis informasi namespace layanan ke yang mendasar XmlWriter atau TextWriter. Dapat melemparkan pengecualian untuk keadaan tertentu; namun, dapat menunda penulisan informasi namespace sampai penulis dan aliran simpul XAML yang sedang diproses mencapai posisi di mana deklarasi namespace XAML dapat dimasukkan.

WriteNode(XamlReader)

Melakukan peralihan berdasarkan jenis node dari pembaca XAML (NodeType) dan memanggil metode yang relevan Write untuk implementasi penulis.

(Diperoleh dari XamlWriter)
WriteStartMember(XamlMember)

Menulis simpul anggota mulai XAML ke yang mendasar XmlWriter atau TextWriter. Memberikan pengecualian jika posisi aliran simpul XAML saat ini berada dalam anggota lain, atau jika tidak berada dalam cakupan atau status penulis di mana anggota mulai dapat ditulis.

WriteStartObject(XamlType)

Menulis simpul objek mulai XAML ke yang mendasar XmlWriter atau TextWriter. Melempar pengecualian jika posisi aliran simpul XAML saat ini tidak berada dalam cakupan di mana objek mulai dapat ditulis, atau jika penulis tidak dalam keadaan yang dapat menulis objek mulai.

WriteValue(Object)

Menulis simpul nilai XAML ke yang mendasar XmlWriter atau TextWriter. Melemparkan pengecualian jika posisi aliran simpul XAML saat ini tidak valid untuk menulis nilai, atau penulis berada dalam status di mana nilai tidak dapat ditulis.

Implementasi Antarmuka Eksplisit

Nama Deskripsi
IDisposable.Dispose()

Lihat Dispose().

(Diperoleh dari XamlWriter)

Berlaku untuk

Lihat juga