View.GetContextNodes(Object, Object) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
現在のコンテキストに基づいて XML ドキュメント オブジェクト モデル (DOM) ノードが設定されているコレクションへの XMLNodesCollection 参照を取得します。
public Microsoft.Office.Interop.InfoPath.XMLNodesCollection GetContextNodes (object varNode, object varViewContext);
abstract member GetContextNodes : obj * obj -> Microsoft.Office.Interop.InfoPath.XMLNodesCollection
Public Function GetContextNodes (Optional varNode As Object, Optional varViewContext As Object) As XMLNodesCollection
パラメーター
- varNode
- Object
XML DOM ノード。
- varViewContext
- Object
コンテキストに使用されるコントロールの ID。
戻り値
XMLNodesCollection コレクションへの参照。
例
次の例では、 オブジェクトの GetContextNodes メソッドを ViewObject 使用して、現在のコンテキストに基づいて XML DOM ノードのコレクションを返します。 次に、XML DOM ノードのコレクションをループして、特定のノードを検索します。 が見つかると、 の field1
テキストが更新されます。 この例では、 という名前のフィールドを含むという名前 group1
の繰り返しセクションの構造が必要です field1
。
XMLNodesCollection contextNodes = thisXDocument.View.<span class="label">GetContextNodes</span>(Type.Missing, Type.Missing);
// Scan the list of context nodes for an field1 node and if one is found
// update its text.
foreach (IXMLDOMNode contextNode in contextNodes)
{
if (contextNode.nodeName == "my:group1")
{
contextNode.selectSingleNode("my:field1").text = "found node";
break;
}
}
注釈
GetContextNodes メソッドによって返されるコレクションは、ビューからマップされた一連の XML DOM ノードから構成され、現在の XSL 変換 (XSLT) ノードに対応します。各ノードは、現在の選択範囲からビューの上位に向かって BODY タグに至る順序で配置されています。
パラメーターを使用しない場合は、現在の選択範囲に基づくコンテキスト ノードが返されます。 パラメーターを使用する場合、返されるコンテキスト ノードは、 メソッドの呼び出し SelectNodes(IXMLDOMNode, Object, Object) から取得される選択に基づいて返されます。
注: GetContextNodes メソッドは、コンテキスト内にあるコントロールからフォーカスが失われるため、ビュー内 OnClick のボタンが発生した場合、現在の選択に基づいてノードを返しません。 この動作を回避するには、カスタム作業ウィンドウ、メニュー、またはツール バーから GetContextNodes メソッドを使用します。