Bagikan melalui


XamlXmlWriter Kelas

Definisi

Menggunakan kelas dukungan TextWriter atau XmlWriter untuk menulis aliran simpul XAML ke formulir serial 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

API XamlWriter memiliki beberapa metode yang menulis berbagai jenis simpul XAML. Secara kolektif, ini disebut dalam dokumentasi sebagai metode Write dari XamlWriter. XamlXmlWriter menggunakan beberapa kelas status internal untuk menentukan apa yang harus dilakukan ketika salah satu implementasi 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 saat ini XamlXmlWriter berada pada nilai atau dalam anggota, pengecualian akan dilemparkan. Biasanya, penelepon API XamlXmlWriter 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 namespace XAML XamlXmlWriter rumit dan tidak terbatas pada panggilan eksplisit ke WriteNamespace. Sebaliknya, panggilan Write lainnya, seperti WriteStartObject, mungkin mengharuskan deklarasi namespace ditulis pada titik tertentu dalam struktur simpul. Penulis XAML menghasilkan awalan dengan logikanya sendiri, atau menggunakan informasi dari layanan INamespacePrefixLookup untuk menentukan awalan pilihan. Selain itu, panggilan WriteNamespace eksplisit 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 metode XamlXmlWriterWrite biasanya InvalidOperationException atau XamlXmlWriterException.

InvalidOperationException sering 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 StartObject berturut-turut, upaya untuk memanggil WriteStartObject kedua akan melemparkan InvalidOperationException. Semua penulis XAML akan menganggap operasi seperti itu tidak valid. Contoh lain dari InvalidOperationException adalah ketika informasi namespace XAML tidak tersedia melalui konteks skema XAML yang berlaku untuk posisi aliran simpul saat ini.

XamlXmlWriterException menunjukkan pengecualian di mana implementasi penulis XAML khusus ini memilih untuk melemparkan pengecualian berdasarkan fungsionalitas yang dimaksudkan. XamlXmlWriterException dapat 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 tidak didukung XamlXmlWriter dan format serialisasinya, atau menulis anggota duplikat saat instans XamlXmlWriterSettings melarangnya.

Konstruktor

XamlXmlWriter(Stream, XamlSchemaContext)

Menginisialisasi instans baru kelas XamlXmlWriter dari aliran.

XamlXmlWriter(Stream, XamlSchemaContext, XamlXmlWriterSettings)

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

XamlXmlWriter(TextWriter, XamlSchemaContext)

Menginisialisasi instans baru kelas XamlXmlWriter dari dasar TextWriter.

XamlXmlWriter(TextWriter, XamlSchemaContext, XamlXmlWriterSettings)

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

XamlXmlWriter(XmlWriter, XamlSchemaContext)

Menginisialisasi instans baru kelas XamlXmlWriter dari dasar XmlWriter.

XamlXmlWriter(XmlWriter, XamlSchemaContext, XamlXmlWriterSettings)

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

Properti

IsDisposed

Mendapatkan apakah Dispose(Boolean) telah dipanggil.

(Diperoleh dari XamlWriter)
SchemaContext

Mendapatkan konteks skema XAML yang digunakan XamlXmlWriter ini untuk diproses.

Settings

Mendapatkan pengaturan penulis yang digunakan XamlXmlWriter ini untuk pemrosesan XAML.

Metode

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 Flush dari XmlWriter atau TextWriteryang mendasar , 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 XmlWriter atau TextWriteryang mendasar. 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 XmlWriter atau TextWriteryang mendasar. 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 XmlWriter atau TextWriteryang mendasar. 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 Write yang relevan untuk implementasi penulis.

(Diperoleh dari XamlWriter)
WriteStartMember(XamlMember)

Menulis simpul anggota mulai XAML ke XmlWriter atau TextWriteryang mendasar. 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 XmlWriter atau TextWriteryang mendasar. 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 XmlWriter atau TextWriteryang mendasar. 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

IDisposable.Dispose()

Lihat Dispose().

(Diperoleh dari XamlWriter)

Berlaku untuk

Lihat juga