Compartir a través de


XamlReader Clase

Definición

Proporciona definiciones de base para las clases que usan la entrada de XAML y generan flujos de nodos XAML.

public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
    interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
Herencia
XamlReader
Derivado
Implementaciones

Comentarios

XamlReader es una clase abstracta y no proporciona implementaciones o definiciones que tienen un resultado de trabajo para todos los miembros. Los miembros que tienen una implementación en XamlReader se indican en los comentarios de ese miembro. En concreto, XamlReader tiene varios miembros abstractos que se deben implementar y varios miembros virtuales.

De los miembros virtuales y ReadSubtreeSkip cada uno proporciona una implementación predeterminada adecuada para la mayoría de los casos. Sin embargo, las ReadSubtree implementaciones predeterminadas y Skip se basan en otro comportamiento esperado del lector XAML de implementación; en particular, se basan en la Read invalidación. Dispose también es un miembro virtual que tiene una implementación predeterminada de trabajo.

Las dos clases siguientes son las clases derivadas más relevantes y prácticas de los servicios XAML de .NET Framework y el ensamblado System.Xaml:

  • XamlObjectReader, que lee un gráfico de objetos, como el gráfico de objetos activos de una aplicación en tiempo de ejecución.

  • XamlXmlReader, que lee XAML en forma de un archivo de texto XML mediante un general XmlReader que carga el archivo como una clase auxiliar intermedia.

Otros lectores XAML de otros marcos incluyen Baml2006Reader y XamlDebuggerXmlReader.

XamlReader difiere de los principios de diseño y XmlReader modelo de objetos de documento XML (DOM) porque XamlReader no tiene un Create método para devolver implementaciones de lector XAML predeterminadas subyacentes. En su lugar, debes crear instancias de clases de lector XAML derivadas específicas mediante una llamada a sus constructores u otras API auxiliares específicas de clase.

Lectores de subárbol

Por lo general, llamas a XamlReader la API en el contexto de clases de lector XAML específicas que derivan de XamlReader. Sin embargo, en un caso concreto, se accede a XamlReader la API en una instancia práctica de lector XAML que no es pública y no se deriva de XamlObjectReader o XamlXmlReader. Este caso es cuando se llama a ReadSubtree, que devuelve una XamlReader instancia de . En la implementación predeterminada, el XamlReader que devuelve esta API es una clase interna.

El XamlReader objeto obtenido para la lectura de subárbol tiene acciones válidas para las API como Read y NodeType, y esas acciones se basan en la clase de lector principal. Este diseño permite a la clase interna realizar un seguimiento del nivel de marco en el que se especificó el subárbol. El subárbol que actúa se asegura de que si la posición del nodo actual se mueve más allá de los límites del subárbol, el lector de subárbol XamlReader específico notifica el final del archivo o null en el nodo actual.

En determinadas XamlReader API se incluyen notas sobre el uso del lector de subárbol.

Constructores

XamlReader()

Inicializa la clase XamlReader.

Propiedades

IsDisposed

Obtiene un valor que indica si se ha llamado al método Dispose(Boolean).

IsEof

Cuando se implementa en una clase derivada, obtiene un valor que notifica si la posición del lector está al final del archivo.

Member

Cuando se implementa en una clase derivada, obtiene el miembro actual situado en la posición del lector, si la posición del lector está en un miembro StartMember.

Namespace

Cuando se implementa en una clase derivada, obtiene la información del espacio de nombres XAML del nodo actual.

NodeType

Cuando se implementa en una clase derivada, obtiene el tipo del nodo actual.

SchemaContext

Cuando se implementa en una clase derivada, obtiene un objeto que proporciona información sobre el contexto de esquema XAML del conjunto de información.

Type

Cuando se implementa en una clase derivada, obtiene el objeto XamlType del nodo actual.

Value

Cuando se implementa en una clase derivada, obtiene el valor del nodo actual.

Métodos

Close()

Cierra el flujo de nodos XAML.

Dispose(Boolean)

Libera los recursos no administrados que usa XamlReader y, de forma opcional, libera los recursos administrados.

Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Object actual.

(Heredado de Object)
Read()

Cuando se implementa en una clase derivada, proporciona el siguiente nodo XAML del origen, si hay alguno disponible.

ReadSubtree()

Devuelve un objeto XamlReader que se basa en el objeto XamlReader actual, donde el objeto XamlReader devuelto se usa para recorrer en iteración un subárbol de la estructura de nodos XAML.

Skip()

Omite el nodo actual y avanza la posición del lector hasta el nodo siguiente.

ToString()

Devuelve una cadena que representa el objeto actual.

(Heredado de Object)

Implementaciones de interfaz explícitas

IDisposable.Dispose()

Libera todos los recursos usados por la instancia actual de la clase XamlReader.

Se aplica a

Consulte también