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 は、動作する既定の実装を持つ仮想メンバーでもあります。

次の 2 つのクラスは、.NET Framework XAML サービスと System.Xaml アセンブリで最も関連性が高く実用的な派生クラスです。

  • XamlObjectReader: 実行時にアプリケーションのアクティブ なオブジェクト グラフなどのオブジェクト グラフを読み取ります。

  • XamlXmlReader:中間ヘルパー クラスとしてファイルを読み込む一般 XmlReader を使用して、XML テキスト ファイルの形式で XAML を読み取ります。

他のフレームワークの他の XAML リーダーには、次XamlDebuggerXmlReaderのものが含まれますBaml2006Reader

XamlReaderは、基になる既定の XAML リーダー実装を返すメソッドがないためXamlReaderCreate、XML ドキュメント オブジェクト モデル (DOM) やXmlReader設計原則とは異なります。 代わりに、コンストラクターまたはその他のクラス固有のヘルパー API を呼び出して、特定の派生 XAML リーダー クラスをインスタンス化する必要があります。

サブツリーリーダー

ほとんどの場合、派生元の特定の XAML リーダー クラスXamlReaderのコンテキストで API を呼び出XamlReaderします。 ただし、特定のケースでは、パブリックではなく、派生XamlObjectReaderしていない実用的な XAML リーダー インスタンス上の API にアクセスXamlReaderしますXamlXmlReader。 このケースは、インスタンスを返す呼び出し ReadSubtree時です XamlReader 。 既定の実装では、 XamlReader この API によって返されるクラスは内部クラスです。

XamlReaderサブツリー読み取り用に取得された API には、次のようなNodeTypeRead有効なアクションがあり、それらのアクションは親リーダー クラスに基づいています。 この設計により、内部クラスはサブツリーが入力されたフレーム レベルを追跡できます。 動作するサブツリー 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 クラスの現在のインスタンスによって使用されているすべてのリソースを解放します。

適用対象

こちらもご覧ください