XamlXmlWriter Klas

Definitie

Maakt gebruik van een TextWriter of XmlWriter ondersteuningsklasse voor het schrijven van een XAML-knooppuntstroom naar een geserialiseerd formulier voor tekst of markeringen.

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

Opmerkingen

Deze klasse wordt doorgaans gebruikt in serialisatiescenario's.

XamlXmlWriter gebruiken

De XamlWriter API heeft verschillende methoden waarmee verschillende typen XAML-knooppunten worden geschreven. Gezamenlijk worden deze genoemd in documentatie als de Write methoden van een XamlWriter. XamlXmlWriter gebruikt verschillende interne statusklassen om te bepalen wat er moet worden gedaan wanneer een van de Write implementaties wordt aangeroepen. Een Write aanroep maakt gebruik van de statussen om te bepalen of het aangevraagde element, kenmerk of waarde kan worden geschreven of dat er een uitzondering wordt gegenereerd. Als u bijvoorbeeld aanroept WriteEndObject en de status van de XamlXmlWriter huidige knooppuntpositie zich op een waarde of binnen een lid bevindt, wordt er een uitzondering gegenereerd. Normaal gesproken moeten aanroepers van de XamlXmlWriter API op de hoogte zijn van het type van het huidige XAML-knooppunt dat afkomstig is van de XAML-lezer en de XAML-knooppuntstroom. Op basis van deze kennis moeten bellers het aanroepen Write van API's vermijden die niet relevant zijn voor het huidige knooppunttype.

XAML-naamruimten en XamlXmlWriter

Het schrijfgedrag van XamlXmlWriter de XAML-naamruimte is complex en is niet beperkt tot expliciete aanroepen naar WriteNamespace. In plaats daarvan kunnen andere Write aanroepen, zoals WriteStartObject, vereisen dat de naamruimtedeclaratie op bepaalde punten in de knooppuntstructuur wordt geschreven. De XAML-schrijver genereert een voorvoegsel op basis van zijn eigen logica of gebruikt informatie van de INamespacePrefixLookup service om een voorkeursvoorvoegsel te bepalen. Expliciete WriteNamespace aanroepen kunnen ook worden uitgesteld of retourneren mogelijk niets als de XAML-naamruimtedeclaratie al van toepassing is en elders is gedeclareerd.

Uitzonderingen voor schrijfmethoden

Uitzonderingen die door de XamlXmlWriterWrite methoden worden gegenereerd, zijn doorgaans InvalidOperationException ofwel XamlXmlWriterException.

Een InvalidOperationException voorbeeld is dat een XAML-lezer een ongeldige knooppuntstructuur heeft doorgegeven aan de XAML-knooppuntstroom. In dit geval is de knooppuntstructuur ongeldig om redenen die niet zijn gerelateerd aan de validatie van een XAML-schema of een XAML-schemacontext. In plaats daarvan is de knooppuntstroom ongeldig in de basisvorm. Als bijvoorbeeld een foutieve XAML-lezerimplementatie een XAML-knooppuntstroom heeft gegenereerd die twee opeenvolgende StartObject knooppunten bevatte, zou de poging om de tweede WriteStartObject aan te roepen een InvalidOperationException. Alle XAML-schrijvers beschouwen een dergelijke bewerking als ongeldig. Een ander voorbeeld is InvalidOperationException wanneer XAML-naamruimtegegevens niet beschikbaar zijn via de XAML-schemacontext die van toepassing is op de huidige positie van de knooppuntstroom.

A XamlXmlWriterException geeft een uitzondering aan waarbij deze specifieke XAML Writer-implementatie ervoor kiest om een uitzondering te genereren op basis van de beoogde functionaliteit. A XamlXmlWriterException kan specifieke gevallen aangeven waarbij een XamlXmlWriter bepaalde status of instellingen schendt. Een kan bijvoorbeeld XamlXmlWriterException het gevolg zijn van pogingen om XAML-naamruimtegegevens te schrijven in een positie die de en de XamlXmlWriter serialisatie-indeling niet ondersteunt of dubbele leden schrijft wanneer het exemplaar XamlXmlWriterSettings deze verbiedt.

Constructors

Name Description
XamlXmlWriter(Stream, XamlSchemaContext, XamlXmlWriterSettings)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanuit een stream met behulp van een writer-instellingenobject.

XamlXmlWriter(Stream, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanuit een stream.

XamlXmlWriter(TextWriter, XamlSchemaContext, XamlXmlWriterSettings)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanaf een TextWriter basis met behulp van een instellingenobject.

XamlXmlWriter(TextWriter, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanaf een TextWriter basis.

XamlXmlWriter(XmlWriter, XamlSchemaContext, XamlXmlWriterSettings)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanaf een XmlWriter basis met behulp van een instellingenobject.

XamlXmlWriter(XmlWriter, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlXmlWriter klasse vanaf een XmlWriter basis.

Eigenschappen

Name Description
IsDisposed

Krijgt of Dispose(Boolean) is gebeld.

(Overgenomen van XamlWriter)
SchemaContext

Hiermee haalt u de XAML-schemacontext op die wordt XamlXmlWriter gebruikt voor verwerking.

Settings

Hiermee haalt u de schrijverinstellingen op die worden XamlXmlWriter gebruikt voor XAML-verwerking.

Methoden

Name Description
Close()

Hiermee sluit u het XAML Writer-object.

(Overgenomen van XamlWriter)
Dispose(Boolean)

Publiceert de niet-beheerde resources die door XamlXmlWriter de beheerde resources worden gebruikt en brengt eventueel de beheerde resources vrij.

Equals(Object)

Bepaalt of het opgegeven object gelijk is aan het huidige object.

(Overgenomen van Object)
Flush()

Roept de Flush methode aan van de onderliggende XmlWriter waarde of TextWriter, die alles schrijft dat zich momenteel in de buffer bevindt en vervolgens de schrijver sluit.

GetHashCode()

Fungeert als de standaardhashfunctie.

(Overgenomen van Object)
GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Retourneert een tekenreeks die het huidige object vertegenwoordigt.

(Overgenomen van Object)
WriteEndMember()

Hiermee schrijft u een XAML-eindlidknooppunt naar het onderliggende XmlWriter of TextWriter. Genereert een uitzondering als de huidige positie van de XAML-knooppuntstroom zich niet binnen een lid bevindt of als de interne schrijverstatus geen ondersteuning biedt voor schrijven naar een eindlid.

WriteEndObject()

Hiermee schrijft u een XAML-eindobjectknooppunt naar de onderliggende XmlWriter waarde of TextWriter. Genereert een uitzondering als de huidige positie van de XAML-knooppuntstroom die wordt verwerkt, niet compatibel is met het schrijven van een eindobject.

WriteGetObject()

Hiermee schrijft u een object voor gevallen waarin het opgegeven object een standaardwaarde of impliciete waarde is van de eigenschap die wordt geschreven, in plaats van op te geven als een objectwaarde in de XAML-knooppuntset voor invoer.

WriteNamespace(NamespaceDeclaration)

Schrijft naamruimtegegevens naar de onderliggende XmlWriter of TextWriter. Kan een uitzondering genereren voor bepaalde statussen; Kan echter in plaats daarvan het schrijven van de naamruimtegegevens uitstellen totdat de schrijver en de XAML-knooppuntstroom die wordt verwerkt, een positie bereikt waar een XAML-naamruimtedeclaratie kan worden ingevoegd.

WriteNode(XamlReader)

Schakelt op basis van het knooppunttype van de XAML-lezer (NodeType) en roept de relevante Write methode aan voor de implementatie van de schrijver.

(Overgenomen van XamlWriter)
WriteStartMember(XamlMember)

Hiermee schrijft u een XAML-beginlidknooppunt naar het onderliggende XmlWriter of TextWriter. Genereert een uitzondering als de huidige positie van de XAML-knooppuntstroom zich binnen een ander lid bevindt of als deze zich niet in een bereik- of schrijfstatus bevindt waarin een beginlid kan worden geschreven.

WriteStartObject(XamlType)

Hiermee schrijft u een XAML-startobjectknooppunt naar de onderliggende XmlWriter waarde of TextWriter. Genereert een uitzondering als de huidige positie van de XAML-knooppuntstroom zich niet in een bereik bevindt waarin een beginobject kan worden geschreven of als de schrijver niet de status heeft die een beginobject kan schrijven.

WriteValue(Object)

Hiermee schrijft u een XAML-waardeknooppunt naar de onderliggende XmlWriter waarde of TextWriter. Genereert een uitzondering als de huidige positie van de XAML-knooppuntstroom ongeldig is voor het schrijven van een waarde, of de schrijver zich in een toestand bevindt waarin een waarde niet kan worden geschreven.

Expliciete interface-implementaties

Name Description
IDisposable.Dispose()

Zie Dispose().

(Overgenomen van XamlWriter)

Van toepassing op

Zie ook