XamlReader 类 
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
为使用 XAML 输入并生成 XAML 节点流的类提供基定义。
public ref class XamlReader abstract : IDisposablepublic abstract class XamlReader : IDisposabletype XamlReader = class
    interface IDisposablePublic MustInherit Class XamlReader
Implements IDisposable- 继承
- 
				XamlReader
- 派生
- 实现
注解
XamlReader 是一个抽象类,不提供对所有成员都有工作结果的实现或定义。 在 中 XamlReader 具有实现的成员在该成员的备注中进行了说明。 具体而言, XamlReader 具有多个必须实现的抽象成员,以及多个虚拟成员。
虚拟成员和 Skip 每个成员ReadSubtree都提供适用于大多数情况的默认实现。 但是, ReadSubtree 和 Skip 默认实现依赖于实现 XAML 读取器的其他预期行为;具体而言,它们依赖于 Read 重写。 Dispose 也是具有有效默认实现的虚拟成员。
以下两个类是.NET Framework XAML 服务和 System.Xaml 程序集中最相关且最实用的派生类:
- XamlObjectReader,用于读取对象图,例如运行时应用程序的活动对象图。 
- XamlXmlReader,它通过使用将文件加载为中间帮助程序类的常规 XmlReader ,以 XML 文本文件的形式读取 XAML。 
其他框架中的其他 XAML 读取器包括 Baml2006Reader 和 XamlDebuggerXmlReader。
              XamlReader 不同于 XML 文档对象模型 (DOM) 和 XmlReader 设计原则,因为 XamlReader 没有 Create 返回基础默认 XAML 读取器实现的方法。 必须改为通过调用其构造函数或其他特定于类的帮助程序 API 来实例化特定的派生 XAML 读取器类。
子树读取器
在大多数情况下,在派生自 XamlReader的特定 XAML 读取器类的上下文中调用 XamlReader API。 但是,在一个特定情况下,你将访问 XamlReader 非公共且不派生自 XamlObjectReader 或 XamlXmlReader的实用 XAML 读取器实例上的 API。 在这种情况下,调用 ReadSubtree将返回 XamlReader 实例。 在默认实现中, XamlReader 此 API 返回的 是一个内部类。
              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 类的当前实例所使用的所有资源。 |