XamlObjectWriter.WriteGetObject Metodo

Definizione

Scrive il concettuale StartObject nel grafico degli oggetti quando l'oggetto specificato è un valore predefinito o implicito della proprietà padre. Il valore implicito deriva da informazioni ottenute dal contesto dello schema XAML e dalle informazioni sul tipo di supporto, invece di essere specificato come valore dell'oggetto nel set di nodi XAML di input.

public:
 override void WriteGetObject();
public override void WriteGetObject();
override this.WriteGetObject : unit -> unit
Public Overrides Sub WriteGetObject ()

Commenti

La differenza tra la scrittura con WriteGetObject e la scrittura con WriteStartObject può essere vista nell'oggetto grafico risultante. WriteGetObject non costruisce un'istanza di un tipo perché l'API WriteGetObject non dispone di informazioni per informare l'oggetto grafico di cosa costruire. Al contrario, l'oggetto è stato creato quando la proprietà padre è stata inizializzata; quindi un XamlObjectWriter non ha bisogno di costruirlo. Al contrario, WriteStartObject specifica che un'istanza di tale tipo deve essere costruita e inserita nell'oggetto grafico.

Se si pensa al flusso del nodo XAML come una serie di fotogrammi, un WriteGetObject oggetto viene bilanciato a una WriteEndObject chiamata. Pertanto, il numero di WriteGetObject chiamate più WriteStartObject deve essere uguale al numero di WriteEndObject chiamate come parte di una valutazione completa della scrittura di oggetti del flusso del nodo XAML.

La posizione concettuale StartObject per un oggetto implicito nell'oggetto grafico è necessaria perché, anche se il valore dell'oggetto stesso è un valore predefinito implicito, tale oggetto potrebbe avere ancora membri che devono essere scritti in base al flusso del nodo XAML. Uno scenario tipico in cui ciò si verifica quando XamlObjectWriter scrive nodi membro per una proprietà della raccolta e l'inizializzazione della raccolta è implicita per creare l'oggetto proprietario della proprietà della raccolta.

Si applica a