XamlReader Класс

Определение

Предоставляет базовые определения для классов, получающих входные данные XAML и создающих потоки узлов XAML.

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

Комментарии

XamlReader является абстрактным классом и не предоставляет реализации или определения, которые имеют рабочий результат для всех членов. Члены, которые имеют реализацию в XamlReader , отмечаются в примечаниях для этого члена. В частности, XamlReader имеет несколько абстрактных элементов, которые необходимо реализовать, и несколько виртуальных элементов.

Из виртуальных членов ReadSubtree и Skip каждый предоставляет реализацию по умолчанию, которая подходит для большинства случаев. Однако ReadSubtree реализации по умолчанию и Skip зависят от другого ожидаемого поведения реализующего средства чтения XAML, в частности, на Read переопределении. Dispose также является виртуальным элементом с работающей реализацией по умолчанию.

Следующие два класса являются наиболее актуальными и практичными производными классами в платформа .NET Framework службах XAML и сборке System.Xaml:

  • XamlObjectReader, который считывает граф объектов, например активный граф объектов приложения во время выполнения.

  • XamlXmlReader, который считывает XAML в виде xml-текстового файла с помощью общего XmlReader , загружающего файл в качестве промежуточного вспомогательного класса.

Другие средства чтения XAML из других платформ включают Baml2006Reader и XamlDebuggerXmlReader.

XamlReader отличается от модели DOM и XmlReader принципов проектирования, так как XamlReader не имеет метода для возврата базовых реализаций Create средства чтения XAML по умолчанию. Вместо этого необходимо создать экземпляры определенных производных классов средств чтения XAML, вызывая их конструкторы или другие вспомогательные API для конкретного класса.

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

По большей части вы вызываете XamlReader API в контексте определенных классов средств чтения XAML, производных от XamlReader. Однако в одном конкретном случае вы обращаетесь к XamlReader API в практическом экземпляре средства чтения XAML, который не является открытым и не является производным от XamlObjectReader или XamlXmlReader. Это происходит при вызове ReadSubtreeметода , который возвращает XamlReader экземпляр . В реализации по умолчанию объект , возвращаемый этим API, XamlReader является внутренним классом.

Объект , XamlReader полученный для чтения поддеревого, имеет допустимые действия для API, таких как Read и NodeType, и эти действия основаны на родительском классе чтения. Эта схема позволяет внутреннему классу отслеживать уровень кадра, на котором было введено поддерево. Действующее поддеревье XamlReader гарантирует, что при перемещении текущего узла за пределы поддеревого, средство чтения конкретного поддеревого сообщает об окончании файла или null на текущем узле.

Примечания об использовании средства чтения поддеревого дерева включены в некоторые XamlReader API.

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

XamlReader()

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

Свойства

IsDisposed

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

IsEof

При реализации в производном классе получает значение, показывающее, расположено ли средство чтения в конце файла.

Member

При реализации в производном классе получает текущий член в положении средства чтения, если эта положении находится в объекте StartMember.

Namespace

При реализации в производном классе получает сведения о пространстве имен XAML из текущего узла.

NodeType

При реализации в производном классе получает тип текущего узла.

SchemaContext

При реализации в производном классе получает объект, предоставляющий сведения о контексте схемы XAML для данного набора сведений.

Type

При реализации в производном классе получает объект XamlType текущего узла.

Value

При реализации в производном классе получает значение текущего узла.

Методы

Close()

Закрывает поток узлов XAML.

Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом XamlReader, а при необходимости освобождает также управляемые ресурсы.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

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

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
Read()

При реализации в производном классе предоставляет следующий узел XAML из источника, если он имеется.

ReadSubtree()

Возвращает объект XamlReader, основанный на текущем объекте XamlReader, где возвращенный объект XamlReader используется для перебора поддерева структуры узлов XAML.

Skip()

Пропускает текущий узел и перемещает позицию средства чтения на следующий узел.

ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

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

IDisposable.Dispose()

Освобождает все ресурсы, используемые текущим экземпляром класса XamlReader.

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

См. также раздел