XamlReader XamlReader XamlReader XamlReader Class

Определение

Предоставляет базовые определения для классов, получающих входные данные XAML и создающих потоки узлов XAML.Provides base definitions for classes that consume XAML input and produce XAML node streams.

public ref class XamlReader abstract : IDisposable
public abstract class XamlReader : IDisposable
type XamlReader = class
    interface IDisposable
Public MustInherit Class XamlReader
Implements IDisposable
Наследование
XamlReaderXamlReaderXamlReaderXamlReader
Производный
Реализации

Комментарии

XamlReaderявляется абстрактным классом и не предоставляет реализации или определений, которые имеют рабочий результат для всех элементов.XamlReader is an abstract class and does not provide implementations or definitions that have a working result for all members. Члены, у которых есть реализация в XamlReader , отмечены в примечаниях для этого элемента.Members that do have an implementation in XamlReader are noted in the remarks for that member. В частности XamlReader , имеет несколько абстрактных членов, которые должны быть реализованы, и несколько виртуальных членов.Specifically, XamlReader has several abstract members that must be implemented, and several virtual members.

Виртуальных членов, ReadSubtree Skip каждая из которых предоставляет реализацию по умолчанию, которая подходит для большинства случаев.Of the virtual members, ReadSubtree and Skip each provide a default implementation that is appropriate for most cases. Однако реализации Skip Read и по умолчанию полагаются на другое ожидаемое поведение реализующего средства чтения XAML; в частности, они зависят от переопределения. ReadSubtreeHowever, the ReadSubtree and Skip default implementations rely on other expected behavior of the implementing XAML reader; in particular, they rely on the Read override. Disposeтакже является виртуальным членом, который имеет рабочую реализацию по умолчанию.Dispose is also a virtual member that has a working default implementation.

Следующие два класса являются наиболее релевантными и практичными производными классами в .NET Framework службах XAML и сборке System. XAML:The following two classes are the most relevant and practical derived classes in .NET Framework XAML Services and the System.Xaml assembly:

  • XamlObjectReader, который считывает граф объекта, например активный граф объектов приложения во время выполнения.XamlObjectReader, which reads an object graph, such as the active object graph of an application at run time.

  • XamlXmlReader, который считывает код XAML в виде текстового XML-файла с помощью общего XmlReader объекта, который загружает файл как вспомогательный класс посредника.XamlXmlReader, which reads XAML in the form of a XML text file by using a general XmlReader that loads the file as an intermediary helper class.

Другие средства чтения XAML из других платформ включают Baml2006Reader и XamlDebuggerXmlReader.Other XAML readers from other frameworks include Baml2006Reader and XamlDebuggerXmlReader.

XamlReaderотличается от Модель объектов XML-документов (DOM)XML Document Object Model (DOM) принципов XmlReader разработки XamlReader ,Create поскольку не имеет метода, возвращающего базовые реализации модуля чтения XAML по умолчанию.XamlReader differs from Модель объектов XML-документов (DOM)XML Document Object Model (DOM) and XmlReader design principles because XamlReader does not have a Create method to return underlying default XAML reader implementations. Вместо этого необходимо создать экземпляры отдельных производных классов чтения XAML путем вызова их конструкторов или других вспомогательных API-интерфейсов для конкретного класса.You must instead instantiate specific derived XAML reader classes by calling their constructors or other class-specific helper APIs.

Читатели поддеревьевSubtree Readers

В большинстве случаев вы вызываете XamlReader API в контексте конкретных классов средства чтения XAML, которые являются производными от. XamlReaderFor the most part, you call XamlReader API in the context of specific XAML reader classes that derive from XamlReader. Однако в одном конкретном случае вы получите доступ XamlReader к API на практическом экземпляре средства чтения XAML, который не является общедоступным и не является производным от XamlObjectReader или XamlXmlReader.However, in one particular case, you access XamlReader API on a practical XAML reader instance that is not public and not derived from XamlObjectReader or XamlXmlReader. ReadSubtree ВXamlReader этом случае вызывается метод, который возвращает экземпляр.This case is when you call ReadSubtree, which returns a XamlReader instance. В реализации по умолчанию объект XamlReader , возвращаемый этим API, является внутренним классом.In the default implementation, the XamlReader that is returned by this API is an internal class.

Объект XamlReader , полученный для чтения поддерева, имеет допустимые действия Read для NodeTypeAPI-интерфейсов, таких как и, и эти действия основаны на родительском классе чтения.The XamlReader obtained for subtree reading has valid actions for APIs such as Read and NodeType, and those actions are based on the parent reader class. Такая схема позволяет внутреннему классу отслеживанию уровня кадров, в котором было указано поддерево.This design enables the internal class to track the frame level where the subtree was entered. Действующее поддерево XamlReader гарантирует, что если текущее расположение узла перемещается за пределы поддерева, то конкретное средство чтения поддерева сообщает о завершении файла или null на текущем узле.The acting subtree XamlReader makes sure that if the current node position is moved beyond the bounds of the subtree, the specific subtree reader reports end-of-file or null at the current node.

Примечания об использовании модуля чтения поддерева включены в некоторые XamlReader интерфейсы API.Notes about subtree reader usage are included on certain XamlReader APIs.

Конструкторы

XamlReader() XamlReader() XamlReader() XamlReader()

Инициализирует класс XamlReader.Initializes the XamlReader class.

Свойства

IsDisposed IsDisposed IsDisposed IsDisposed

Получает сведения о том, вызывался ли метод Dispose(Boolean).Gets whether Dispose(Boolean) has been called.

IsEof IsEof IsEof IsEof

При реализации в производном классе получает значение, показывающее, расположено ли средство чтения в конце файла.When implemented in a derived class, gets a value that reports whether the reader position is at end-of-file.

Member Member Member Member

При реализации в производном классе получает текущий член в положении средства чтения, если эта положении находится в объекте StartMember.When implemented in a derived class, gets the current member at the reader position, if the reader position is on a StartMember.

Namespace Namespace Namespace Namespace

При реализации в производном классе получает сведения о пространстве имен XAML из текущего узла.When implemented in a derived class, gets the XAML namespace information from the current node.

NodeType NodeType NodeType NodeType

При реализации в производном классе получает тип текущего узла.When implemented in a derived class, gets the type of the current node.

SchemaContext SchemaContext SchemaContext SchemaContext

При реализации в производном классе получает объект, предоставляющий сведения о контексте схемы XAML для данного набора сведений.When implemented in a derived class, gets an object that provides XAML schema context information for the information set.

Type Type Type Type

При реализации в производном классе получает объект XamlType текущего узла.When implemented in a derived class, gets the XamlType of the current node.

Value Value Value Value

При реализации в производном классе получает значение текущего узла.When implemented in a derived class, gets the value of the current node.

Методы

Close() Close() Close() Close()

Закрывает поток узлов XAML.Closes the XAML node stream.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом XamlReader, а при необходимости освобождает также управляемые ресурсы.Releases the unmanaged resources used by the XamlReader, and optionally, releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Служит хэш-функцией по умолчанию.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
Read() Read() Read() Read()

При реализации в производном классе предоставляет следующий узел XAML из источника, если он имеется.When implemented in a derived class, provides the next XAML node from the source, if a node is available.

ReadSubtree() ReadSubtree() ReadSubtree() ReadSubtree()

Возвращает объект XamlReader, основанный на текущем объекте XamlReader, где возвращенный объект XamlReader используется для перебора поддерева структуры узлов XAML.Returns a XamlReader that is based on the current XamlReader, where the returned XamlReader is used to iterate through a subtree of the XAML node structure.

Skip() Skip() Skip() Skip()

Пропускает текущий узел и перемещает позицию средства чтения на следующий узел.Skips the current node and advances the reader position to the next node.

ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)

Явные реализации интерфейса

IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose() IDisposable.Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса XamlReader.Releases all resources used by the current instance of the XamlReader class.

Применяется к

Дополнительно