XamlReader Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce le definizioni di base per le classi che utilizzano l'input XAML e producono flussi del nodo XAML.
public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
- Ereditarietà
-
XamlReader
- Derivato
- Implementazioni
Commenti
XamlReader è una classe astratta e non fornisce implementazioni o definizioni con un risultato funzionante per tutti i membri. I membri che dispongono di un'implementazione in XamlReader sono indicati nelle note relative a tale membro. In particolare, XamlReader include diversi membri astratti che devono essere implementati e diversi membri virtuali.
Dei membri ReadSubtree virtuali e Skip ognuno di essi fornisce un'implementazione predefinita appropriata per la maggior parte dei casi. Tuttavia, le ReadSubtree implementazioni predefinite e Skip si basano su altri comportamenti previsti del lettore XAML di implementazione, in particolare si basano sull'override Read . Dispose è anche un membro virtuale con un'implementazione predefinita funzionante.
Le due classi seguenti sono le classi derivate più rilevanti e pratiche nei servizi XAML di .NET Framework e nell'assembly System.Xaml:
XamlObjectReader, che legge un oggetto grafico, ad esempio l'oggetto grafico attivo di un'applicazione in fase di esecuzione.
XamlXmlReader, che legge XAML sotto forma di file di testo XML usando un generale XmlReader che carica il file come classe helper intermediaria.
Altri lettori XAML di altri framework includono Baml2006Reader e XamlDebuggerXmlReader.
XamlReader differisce dai principi DOM (Document Object Model) XML perché XmlReaderXamlReader non dispone di un Create
metodo per restituire implementazioni del lettore XAML predefinite sottostanti. Devi invece creare un'istanza di classi di lettore XAML derivate specifiche chiamando i costruttori o altre API helper specifiche della classe.
Lettori sottoalberi
Nella maggior parte dei casi, chiami XamlReader l'API nel contesto di classi di lettore XAML specifiche che derivano da XamlReader. In un caso specifico, tuttavia, si accede all'API XamlReader in un'istanza pratica del lettore XAML non pubblica e non derivata da XamlObjectReader o XamlXmlReader. Questo caso si verifica quando si chiama ReadSubtree, che restituisce un'istanza XamlReader di . Nell'implementazione predefinita, l'oggetto XamlReader restituito da questa API è una classe interna.
L'oggetto XamlReader ottenuto per la lettura del sottoalbero ha azioni valide per le API, Read ad esempio e NodeType, e tali azioni sono basate sulla classe lettore padre. Questa progettazione consente alla classe interna di tenere traccia del livello di frame in cui è stato immesso il sottoalbero. Il sottoalbero XamlReader operatore assicura che se la posizione del nodo corrente viene spostata oltre i limiti del sottoalbero, il lettore di sottoalbero specifico segnala la fine del file o null
il nodo corrente.
Le note sull'utilizzo del lettore di sottoalbero sono incluse in determinate XamlReader API.
Costruttori
XamlReader() |
Inizializza la classe XamlReader. |
Proprietà
IsDisposed |
Ottiene un valore che indica se Dispose(Boolean) è stato chiamato. |
IsEof |
Quando implementato in una classe derivata, ottiene un valore che indica se la posizione del reader è alla fine del file. |
Member |
Quando implementato in una classe derivata, ottiene il membro corrente nella posizione del reader, se la posizione del reader è in un oggetto StartMember. |
Namespace |
Quando implementato in una classe derivata, ottiene le informazioni sullo spazio dei nomi XAML del nodo corrente. |
NodeType |
Quando implementato in una classe derivata, ottiene il tipo del nodo corrente. |
SchemaContext |
Quando implementato in una classe derivata, ottiene un oggetto che fornisce le informazioni sul contesto dello schema XAML per il set di informazioni. |
Type |
Quando implementato in una classe derivata, ottiene l'oggetto XamlType del nodo corrente. |
Value |
Quando implementato in una classe derivata, ottiene il valore del nodo corrente. |
Metodi
Close() |
Chiude il flusso del nodo XAML. |
Dispose(Boolean) |
Rilascia le risorse non gestite utilizzate dall'oggetto XamlReader e facoltativamente rilascia le risorse gestite. |
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
Read() |
Quando implementato in una classe derivata, fornisce il nodo XAML successivo dall'origine, se è disponibile un nodo. |
ReadSubtree() |
Restituisce un oggetto XamlReader basato sull'oggetto XamlReader corrente, dove l'oggetto XamlReader restituito viene utilizzato per scorrere un sottoalbero della struttura dei nodi XAML. |
Skip() |
Ignora il nodo corrente e fa avanzare la posizione del reader al nodo successivo. |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
Implementazioni dell'interfaccia esplicita
IDisposable.Dispose() |
Rilascia tutte le risorse usate dall'istanza corrente della classe XamlReader. |