次の方法で共有


View.GetSelectedNodes メソッド

定義

ビュー内の項目の XPathNodeIterator 現在の選択内のすべての XML ノードを反復処理するためのオブジェクトへの参照を取得します。

public:
 abstract System::Xml::XPath::XPathNodeIterator ^ GetSelectedNodes();
public abstract System.Xml.XPath.XPathNodeIterator GetSelectedNodes();
abstract member GetSelectedNodes : unit -> System.Xml.XPath.XPathNodeIterator
Public MustOverride Function GetSelectedNodes () As XPathNodeIterator

戻り値

XPathNodeIterator現在の選択範囲のすべてのノードを反復処理するための 。

例外

GetSelectedNodes メソッドは、イベントのイベント ハンドラーLoadingから呼び出されました。

次の例では、 メソッドを SelectNodes(XPathNavigator) 使用して、 group2 にバインドされた Repeating Table コントロールの最初の行のノードを選択します。 次に、GetSelectedNodes メソッドを使用して、現在の選択範囲に基づいたノードのコレクションを返します。 そして最後に、ノードのコレクションにループ処理を実行して、各ノードの名前、内部 XML、および値を表示します。

// Create XPathNavigator and specify XPath for nodes.
XPathNavigator repeatingTableRow1 = 
   MainDataSource.CreateNavigator().SelectSingleNode(
   "/my:myFields/my:group1/my:group2[1]", NamespaceManager);

// Select nodes in specified XPathNavigator.
CurrentView.SelectNodes(repeatingTableRow1);

// Get selected nodes.
XPathNodeIterator selectedNodes = 
   CurrentView.GetSelectedNodes();

// Display the count of selected nodes.
MessageBox.Show(selectedNodes.Count.ToString());

// Loop through collection and display information.
foreach (XPathNavigator selectedNode in selectedNodes)
{
   MessageBox.Show(selectedNode.Name);
   MessageBox.Show(selectedNode.InnerXml);
   MessageBox.Show(selectedNode.Value);
}
' Create XPathNavigator and specify XPath for nodes.
Dim repeatingTableRow1 As XPathNavigator  = _
   CreateNavigator().SelectSingleNode( _
   "/my:myFields/my:group1/my:group2[1]", NamespaceManager)

' Select nodes in specified XPathNavigator.
CurrentView.SelectNodes(repeatingTableRow1)

' Get selected nodes.
Dim selectedNodes As XPathNodeIterator = _
   CurrentView.GetSelectedNodes()

' Display the count of selected nodes.
MessageBox.Show(selectedNodes.Count.ToString())

' Loop through collection and display information.
Dim selectedNode As XPathNavigator
For Each selectedNode In selectedNodes
   MessageBox.Show(selectedNode.Name)
   MessageBox.Show(selectedNode.InnerXml)
   MessageBox.Show(selectedNode.Value)
Next

注釈

ビュー内で項目が 1 つも選択されていない場合、およびテキストしか選択されていない場合は、 GetSelectedNodes メソッドから返された XPathNodeIterator オブジェクトには、反復処理の対象として何も格納されていません。

: GetSelectedNodes メソッドは、コンテキスト内にあるコントロールからフォーカスが失われるため、ビュー内のボタンのイベントのイベント ハンドラー Clicked で使用されている場合、現在の選択に基づいてノードを返しません。 この動作を回避するには、カスタム作業ウィンドウ、メニュー、またはツール バーから GetSelectedNodes を使用します。

このメンバは、現在開いているフォームと同じドメインで実行中のフォーム、またはクロスドメインのアクセス許可が与えられたフォームだけがアクセスできます。

この型またはメンバーには、Microsoft InfoPath Filler で開いたフォームで実行されるコードからのみアクセスできます。

適用対象