Compartilhar via


XamlReader Classe

Definição

Fornece definições de base para classes que consomem entradas XAML e produzem fluxos de nós XAML.

public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
    interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
Herança
XamlReader
Derivado
Implementações

Comentários

XamlReader é uma classe abstrata e não fornece implementações ou definições que têm um resultado funcional para todos os membros. Os membros que têm uma implementação XamlReader são observados nas observações desse membro. Especificamente, XamlReader tem vários membros abstratos que devem ser implementados e vários membros virtuais.

Dos membros virtuais e ReadSubtree Skip cada um fornece uma implementação padrão apropriada para a maioria dos casos. No entanto, as implementações e Skip o ReadSubtree padrão dependem de outro comportamento esperado do leitor XAML em implementação; em particular, eles dependem da Read substituição. Dispose também é um membro virtual que tem uma implementação padrão de trabalho.

As duas classes a seguir são as classes derivadas mais relevantes e práticas no .NET Framework XAML Services e no assembly System.Xaml:

  • XamlObjectReader, que lê um grafo de objeto, como o grafo de objeto ativo de um aplicativo em tempo de execução.

  • XamlXmlReader, que lê XAML na forma de um arquivo de texto XML usando um geral XmlReader que carrega o arquivo como uma classe auxiliar intermediária.

Outros leitores XAML de outras estruturas incluem Baml2006Reader e XamlDebuggerXmlReader.

XamlReader difere do DOM (Modelo de Objeto de Documento) XML e XmlReader dos princípios de design porque XamlReader não tem um Create método para retornar implementações de leitor XAML padrão subjacentes. Em vez disso, você deve instanciar classes de leitor XAML derivadas específicas chamando seus construtores ou outras APIs auxiliares específicas de classe.

Leitores de subárvores

Na maioria das vezes, você chama XamlReader a API no contexto de classes de leitor XAML específicas que derivam de XamlReader. No entanto, em um caso específico, você acessa XamlReader a API em uma instância prática de leitor XAML que não é pública e não derivada de XamlObjectReader ou XamlXmlReader. Esse caso é quando você chama ReadSubtree, que retorna uma XamlReader instância. Na implementação padrão, a XamlReader que é retornada por essa API é uma classe interna.

A XamlReader leitura obtida para subárvores tem ações válidas para APIs, como Read e NodeTypeessas ações são baseadas na classe de leitor pai. Esse design permite que a classe interna acompanhe o nível do quadro em que a subárvore foi inserida. A subárvore XamlReader de ação garante que, se a posição atual do nó for movida além dos limites da subárvore, o leitor de subárvores específico relatará o fim do arquivo ou null no nó atual.

As anotações sobre o uso do leitor de subárvores estão incluídas em determinadas XamlReader APIs.

Construtores

XamlReader()

Inicializa a classe XamlReader.

Propriedades

IsDisposed

Obtém se Dispose(Boolean) foi chamado.

IsEof

Quando implementado em uma classe derivada, obtém um valor que informa se a posição do leitor está no fim do arquivo.

Member

Quando implementada em uma classe derivada, obterá o membro atual na posição do leitor, se a posição do leitor estiver em um StartMember.

Namespace

Quando implementado em uma classe derivada, obtém as informações do namespace de XAML do nó atual.

NodeType

Quando implementado em uma classe derivada, obtém o tipo do nó atual.

SchemaContext

Quando implementado em uma classe derivada, obtém um objeto que fornece informações de contexto do esquema XAML para o conjunto de informações.

Type

Quando implementado em uma classe derivada, obtém o XamlType do nó atual.

Value

Quando implementado em uma classe derivada, obtém o valor do nó atual.

Métodos

Close()

Fecha o fluxo de nós XAML.

Dispose(Boolean)

Libera os recursos não gerenciados usados pelo XamlReader e, opcionalmente, libera os recursos gerenciados.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
Read()

Quando implementado em uma classe derivada, fornecerá o próximo nó XAML da origem, se houver um nó disponível.

ReadSubtree()

Retorna um XamlReader que se baseia no XamlReader atual, no qual o XamlReader retornado é usado para iterar em uma subárvore da estrutura de nós XAML.

Skip()

Ignora o nó atual e avança a posição do leitor para o próximo nó.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Implantações explícitas de interface

IDisposable.Dispose()

Libera todos os recursos usados pela instância atual da classe XamlReader.

Aplica-se a

Confira também