Freigeben über


View.GetSelectedNodes Methode

Definition

Ruft einen Verweis auf ein XPathNodeIterator -Objekt zum Durchlaufen aller XML-Knoten in der aktuellen Auswahl von Elementen in einer Ansicht ab.

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

Gibt zurück

Ein XPathNodeIterator zum Durchlaufen aller Knoten in der aktuellen Auswahl.

Ausnahmen

Die GetSelectedNodes-Methode wurde von einem Ereignishandler für das Loading Ereignis aufgerufen.

Beispiele

Im folgenden Beispiel wird die SelectNodes(XPathNavigator) -Methode verwendet, um die Knoten in der ersten Zeile eines Steuerelements für wiederholte Tabellen auszuwählen, das an group2 gebunden ist. Dann wird die GetSelectedNodes-Methode verwendet, um basierend auf der aktuellen Auswahl eine Auflistung von Knoten zurückzugeben. Schließlich führt der Code eine Schleife durch die Auflistung der Knoten aus und zeigt den Namen, die innere XML und den Wert jedes Knotens an.

// 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

Hinweise

Wenn in einer Ansicht keine Elemente ausgewählt sind oder nur Text ausgewählt ist, hat das XPathNodeIterator-Objekt, das von der GetSelectedNodes-Methode zurückgegeben wird, keine Elemente zum Durchlaufen.

Hinweis: Die GetSelectedNodes-Methode gibt keine Knoten basierend auf der aktuellen Auswahl zurück, wenn sie im Ereignishandler für das Clicked Ereignis einer Schaltfläche in der Ansicht verwendet wird, da der Fokus von dem Steuerelement verloren geht, das im Kontext sein soll. Um dieses Verhalten zu vermeiden, verwenden Sie GetSelectedNodes in einem benutzerdefinierten Aufgabenbereich, einem benutzerdefinierten Menü oder einer benutzerdefinierten Symbolleiste.

Auf dieses Mitglied kann nur mithilfe von Formularen zugegriffen werden, die in der gleichen Domäne wie das derzeit geöffnete Formular ausgeführt werden oder denen domänenübergreifende Berechtigungen zugewiesen wurden.

Auf diesen Typ oder dieses Mitglied kann nur über Code zugegriffen werden, der in Formularen ausgeführt wird, die in Microsoft InfoPath Filler geöffnet wurden.

Gilt für: