Partager via


View.GetSelectedNodes, méthode

Obtient une référence à un objet XPathNodeIterator qui se répète sur tous les nœuds XML des éléments sélectionnés dans une vue.

Espace de noms :  Microsoft.Office.InfoPath
Assembly :  Microsoft.Office.InfoPath (dans Microsoft.Office.InfoPath.dll)

Syntaxe

'Déclaration
Public MustOverride Function GetSelectedNodes As XPathNodeIterator
'Utilisation
Dim instance As View
Dim returnValue As XPathNodeIterator

returnValue = instance.GetSelectedNodes()
public abstract XPathNodeIterator GetSelectedNodes()

Valeur de retour

Type : System.Xml.XPath.XPathNodeIterator
XPathNodeIterator pour répétition sur tous les nœuds de la sélection active.

Exceptions

Exception Condition
InvalidOperationException

La méthode GetSelectedNodes a été appelée depuis un gestionnaire d’événements pour l’événement Loading.

Remarques

Si aucun élément n’est sélectionné dans une vue ou si seul du texte est sélectionné, l’objet XPathNodeIterator renvoyé par la méthode GetSelectedNodes ne peut pas réaliser d’itération.

Notes

La méthode GetSelectedNodes ne renvoie pas de nœuds basés sur la sélection active si elle est utilisée dans le gestionnaire d’événements pour l’événement Clicked d’un bouton de la vue, car le contrôle prévu pour ce contexte est désactivé. Pour éviter ce comportement, utilisez GetSelectedNodes à partir d’un volet Office personnalisé, d’un menu ou d’une barre d’outils.

Ce membre est accessible uniquement par les formulaires qui s’exécutent dans le même domaine que le formulaire ouvert ou par les formulaires qui disposent d’autorisations valables pour plusieurs domaines.

Ce type ou ce membre est accessible uniquement à partir du code exécuté dans les formulaires ouverts dans Microsoft InfoPath Filler.

Exemples

Dans l’exemple suivant, la méthode SelectNodes est utilisée pour sélectionner les nœuds de la première ligne d’un contrôle de Tableau extensible lié à group2. La méthode GetSelectedNodes est ensuite utilisée pour renvoyer une collection de nœuds basée sur la sélection active. Enfin, le code effectue une boucle dans la collection de nœuds pour afficher le nom, le XML central et la valeur de chaque nœud.

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

Voir aussi

Référence

View Classe

View, membres

Microsoft.Office.InfoPath, espace de noms