Поделиться через


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. Метод 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

Комментарии

Если в представлении не выбраны элементы или выбран только текст, тогда объект XPathNodeIterator, возвращенный методом GetSelectedNodes, не содержит итерации.

Примечание. Метод GetSelectedNodes не возвращает узлы на основе текущего выделения, если используется в обработчике событий для Clicked события кнопки в представлении, так как фокус теряется из элемента управления, который должен находиться в контексте. Чтобы избежать этого поведения, используйте метод GetSelectedNodes из настраиваемой области задач, меню или панели инструментов.

Доступ к этому элементу предоставляется только формам, работающим в том же домене, что и текущая открытая форма, а также формам с междоменными правами доступа.

Доступ к этому типу или элементу предоставляется только из кода, выполняющегося в формах, открытых в Microsoft InfoPath Filler.

Применяется к