XamlWriterメソッドで定義されているを使用するように、のメソッドはパターンを実装します。WriteNodeリーダー内の現在Writeの位置にあるノードの種類に応じて、メソッド間でロジックが切り替わります。出力オブジェクトグラフ内の参照の概念点が維持されます。特定のスコープでは、特定の操作が有効であるか無効であるか、操作なしの結果が生成されることがあります。呼び出しWriteStartMemberて、インスタンスとして既に存在するオブジェクトに対して初期化用にディレクティブを書き込む場合、既定の実装では例外がスローされます。exception.カスタムXamlObjectWriterのでスコープを追跡する方法としては、ノードアクションをスタックまたはフレームクラスに揃える方法があります。スタックまたはフレームは、がXamlObjectWriterオブジェクトグラフを書き込むときに入力または終了されたオブジェクトモデルの深さのレベルごとに、プッシュとポップを追跡できます。graph.関数Callbacks中間および高度なXamlObjectWriterシナリオをサポートするために、オブジェクトグラフを記述する機構は、がXamlObjectWriterコミットまたはコミットしようとしたときに発生するコールバックエントリポイントを提供します。一部のコールバックは、設定で有効になっており、オブジェクトの種類や記述されているメンバーに固有ではありません。コールバック情報は、多くの場合、コンテキストで使用することも、コールバックを介して送信されるイベントデータ内で使用することもできます。関連するコールバックの一覧を次に示します。BeginInitスコープが新しいオブジェクトに移動し、オブジェクトの有効期間のフェーズで呼び出されたときに呼び出されます。EndInitスコープが新しいオブジェクトに移動し、オブジェクトの有効期間のフェーズで呼び出されたときに呼び出されます。object.によってBeforePropertiesHandler宣言されたコールバックは、オブジェクト内でスコープが開始されたときWriteStartMemberに呼び出され、そのオブジェクトスコープへの最初の呼び出しが行われたが、まだコミットされていない場合に発生します。committed.によってAfterPropertiesHandler宣言されたコールバックは、オブジェクト内でスコープが開始されたWriteEndObjectときに呼び出され、そのオブジェクトスコープへの呼び出しが行われているが、まだコミットされていない場合に発生します。committed.によってXamlSetValueHandler宣言されたコールバックOnSetValueは、が呼び出されたときに呼び出されます。Keysの既定のXamlObjectWriter実装では、ディクショナリの内容がオブジェクトDictionary<TKey,TValue>グラフに追加される前に、の制約に対する型変換がサポートされています。この方法では、ジェネリックディクショナリを実行時にオブジェクトによってキー指定でき、関連するAddジェネリックおよびインデクサーの動作と一致させることができます。Dictionary<TKey,TValue>派生クラスではなく、基本クラスからのオブジェクトグラフの作成にのみ存在します。ライターインスタンスに対して呼び出しが行われる場合に使用されることがあります。スローされる可能性があります。クラスの新しいインスタンスを初期化します。クラスの新しいインスタンスを初期化します。呼び出されているかどうかを取得します。XamlWriter)Result最後に書き込まれたオブジェクトを取得します。グラフが完成したときにだけ呼び出されます。サービスを取得します。コンテキストを取得します。メソッドの呼び出しも行われるかどうかを報告する値を取得します。グラフをクリアします。オブジェクトを閉じます。リソースも解放します。resources.Equals(Object)指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判定します。Object)GetHashCode()既定のハッシュ関数として機能します。簡易コピーを作成します。メソッドを呼び出します。メソッドを呼び出します。参照メソッドを呼び出します。参照メソッドを呼び出します。参照メソッドを呼び出します。実装し、例外の行情報を提供します。