XamlReader.ReadSubtree Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna um XamlReader que se baseia na atual XamlReader, em que o retornado XamlReader é usado para iterar por meio de uma subárvore da estrutura do nó XAML.
public:
virtual System::Xaml::XamlReader ^ ReadSubtree();
public virtual System.Xaml.XamlReader ReadSubtree();
abstract member ReadSubtree : unit -> System.Xaml.XamlReader
override this.ReadSubtree : unit -> System.Xaml.XamlReader
Public Overridable Function ReadSubtree () As XamlReader
Retornos
Uma nova instância de leitor XAML para a subárvore.
Comentários
Esse método tem uma implementação padrão e retorna um valor válido XamlReader. O retornado XamlReader é uma classe interna que restringe determinadas XamlReader ações. As restrições são consistentes com a finalidade de ler apenas uma subárvore dimensionada de uma fonte maior para um conjunto de nós XAML e de retornar o fim do arquivo ou null no nó atual quando a subárvore for encerrada.
Em geral, você deve verificar o nó atual da inicial Read para determinar se precisa de um leitor de subárvore. Como você verifica se isso pode ser específico da implementação; no entanto, evite criar vários leitores de subárvores para cada subárvore. Além disso, evite invocar um leitor de subárvore para determinados casos de nó (por exemplo, para NamespaceDeclaration) que não possam conter uma subárvore de nós.
Depois de obter um leitor de subárvore, você deve chamá-lo Read para obter um nó atual (ou chamar Skip para obter um próximo nó). Você não obtém automaticamente uma posição de nó inicial do leitor de subárvore ao criá-la.
O leitor que você obtém chamando ReadSubtree dessa implementação padrão é uma classe interna. A classe interna baseia seu comportamento na XamlReader implementação que está sendo usada quando ReadSubtree é chamada. A finalidade da classe interna é encapsular o Read comportamento de passagem geral. A passagem permanece dentro da subárvore pretendida mantendo o controle de StartMember/EndMember pares ou StartObject/EndObject pares. Ele também retorna false corretamente para Read e true para IsEof quando o leitor está no final da subárvore, conforme definido por seu ponto de entrada. Em geral, você pressupõe que qualquer XamlReader API que você chamar de um leitor de subárvore tenha a mesma implementação que a geral XamlReader , exceto pelo comportamento delimitadora de passagem.
No entanto, ReadSubtree é virtual. Portanto, uma implementação específica XamlReader pode fornecer um comportamento diferente do XamlReader comportamento do wrapper interno; e uma XamlReader implementação pode até desabilitar a funcionalidade do leitor de subárvore retornando NotImplementedException ou outras exceções.