Compartir a través de


View.GetSelectedNodes Método

Definición

Obtiene una referencia a un XPathNodeIterator objeto para recorrer en iteración todos los nodos XML de la selección actual de elementos de una vista.

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

Devoluciones

para XPathNodeIterator recorrer en iteración todos los nodos de la selección actual.

Excepciones

Se llamó al método GetSelectedNodes desde un controlador de eventos para el Loading evento.

Ejemplos

En el ejemplo siguiente, el SelectNodes(XPathNavigator) método se usa para seleccionar los nodos de la primera fila de un control Repeating Table enlazado a group2. A continuación, se usa el método GetSelectedNodes para devolver una colección de nodos basada en la selección actual. Por último, el código realiza una operación de bucle en la colección de nodos y muestra el nombre, el XML interno y el valor de cada nodo.

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

Comentarios

Si no hay ningún elemento seleccionado en una vista o si sólo hay texto seleccionado, el objeto XPathNodeIterator devuelto por el método GetSelectedNodes no tiene nodos por los que realizar la iteración.

Nota: El método GetSelectedNodes no devolverá nodos en función de la selección actual si se usa en el controlador de eventos para el Clicked evento de un botón en la vista, ya que el foco se pierde del control que está pensado para estar en contexto. Para evitar este comportamiento, utilice el método GetSelectedNodes desde un panel de tareas personalizado, un menú o una barra de tareas.

Únicamente se puede acceder a este miembro con formularios que se ejecuten en el mismo dominio que el formulario que está actualmente abierto o con formularios a los que se hayan concedido permisos entre dominios.

Únicamente se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler.

Se aplica a