Compartir vía


XamlObjectWriter.WriteGetObject Método

Definición

Escribe el elemento StartObject conceptual en el gráfico de objeto cuando el objeto especificado se corresponde con el valor predeterminado o implícito de la propiedad primaria. El valor implícito procede de la información obtenida del contexto de esquema XAML y de la información sobre los tipos de respaldo, en lugar de especificarse como un valor de objeto en el conjunto de nodos XAML de entrada.

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

Comentarios

La diferencia entre escribir con WriteGetObject y escribir con WriteStartObject se puede ver en el gráfico de objetos resultante. WriteGetObject no construye una instancia de un tipo porque la WriteGetObject API no tiene información para informar al gráfico de objetos de qué construir. En su lugar, el objeto se creó cuando se inicializó la propiedad primaria; por lo tanto, XamlObjectWriter no es necesario construirlo. En cambio, WriteStartObject especifica que se debe construir e insertar una instancia de ese tipo en el gráfico de objetos.

Si piensas en el flujo de nodo XAML como una serie de fotogramas, se WriteGetObject equilibra una llamada a .WriteEndObject Por lo tanto, el número de WriteGetObject llamadas más WriteStartObject debe ser igual al número de WriteEndObject llamadas como parte de una evaluación completa de escritura de objetos del flujo de nodo XAML.

La posición conceptual StartObject de un objeto implícito en el gráfico de objetos es necesaria porque, aunque el propio valor del objeto es un valor predeterminado implícito, es posible que ese objeto todavía tenga miembros que deba escribirse en función del flujo de nodo XAML. Un escenario típico en el que esto ocurre es cuando XamlObjectWriter escribe nodos miembros para una propiedad de colección y la inicialización de la colección es implícita para crear el objeto que posee la propiedad de colección.

Se aplica a