XamlObjectWriter.WriteGetObject Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Schrijft het conceptueel StartObject naar de objectgrafiek wanneer het opgegeven object een standaardwaarde of impliciete waarde van de bovenliggende eigenschap is. De impliciete waarde is afkomstig van informatie die wordt verkregen uit de XAML-schemacontext en informatie over het type back-up, in plaats van als een objectwaarde in de XAML-knooppuntset voor invoer.
public:
override void WriteGetObject();
public override void WriteGetObject();
override this.WriteGetObject : unit -> unit
Public Overrides Sub WriteGetObject ()
Opmerkingen
Het verschil tussen schrijven met WriteGetObject en schrijven met WriteStartObject is te zien in de resulterende objectgrafiek. WriteGetObject maakt geen exemplaar van een type omdat de WriteGetObject API geen informatie heeft om de objectgrafiek te informeren over wat er moet worden gemaakt. In plaats daarvan is het object gemaakt toen de bovenliggende eigenschap werd geïnitialiseerd; XamlObjectWriter een hoeft het dus niet te bouwen. Geeft daarentegen WriteStartObject aan dat een exemplaar van dat type moet worden samengesteld en ingevoegd in de objectgrafiek.
Als u de XAML-knooppuntstroom als een reeks frames beschouwt, wordt een WriteGetObject aanroep in balans gebracht WriteEndObject . Daarom moet het aantal WriteGetObject plus-aanroepen WriteStartObject gelijk zijn aan het aantal WriteEndObject aanroepen als onderdeel van een volledige evaluatie van het schrijven van objecten van de XAML-knooppuntstroom.
De conceptuele StartObject positie voor een impliciet object in de objectgrafiek is nodig omdat hoewel de objectwaarde zelf een impliciete standaardwaarde is, dat object nog steeds leden heeft die moeten worden geschreven op basis van de XAML-knooppuntstroom. Een typisch scenario waarbij dit gebeurt, is wanneer XamlObjectWriter lidknooppunten voor een verzamelingseigenschap worden geschreven en de initialisatie van de verzameling impliciet is voor het maken van het object dat eigenaar is van de verzamelingseigenschap.