View2.GetContextNodes(Object, Object) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene una referencia a una XMLNodesCollection colección que se rellena con nodos del modelo de objetos de documento (DOM) XML en función del contexto actual.
public Microsoft.Office.Interop.InfoPath.XMLNodesCollection GetContextNodes (object varNode, object varViewContext);
abstract member GetContextNodes : obj * obj -> Microsoft.Office.Interop.InfoPath.XMLNodesCollection
Public Function GetContextNodes (Optional varNode As Object, Optional varViewContext As Object) As XMLNodesCollection
Parámetros
- varNode
- Object
Nodo XML DOM.
- varViewContext
- Object
Id. del control utilizado para el contexto.
Devoluciones
Referencia a la colección XMLNodesCollection.
Implementaciones
Ejemplos
En el ejemplo siguiente, se usa el método GetContextNodes del ViewObject objeto para devolver una colección de nodos DOM XML en función del contexto actual. A continuación, el código efectúa un bucle en toda la colección de nodos XML DOM buscando uno en particular. Cuando se encuentra, se actualiza el texto de field1
. En este ejemplo se requiere una estructura de una sección repetición denominada group1
que contiene un campo denominado field1
.
XMLNodesCollection contextNodes = thisXDocument.View.<span class="label">GetContextNodes</span>(Type.Missing, Type.Missing);
// Scan the list of context nodes for an field1 node and if one is found
// update its text.
foreach (IXMLDOMNode contextNode in contextNodes)
{
if (contextNode.nodeName == "my:group1")
{
contextNode.selectSingleNode("my:field1").text = "found node";
break;
}
}
Comentarios
La colección devuelta por el método GetContextNodes está compuesta por la secuencia de nodos XML DOM asignados desde la vista, correspondientes al nodo de transformación XSL (XSLT) actual, comenzando por la selección actual y recorriendo los antecesores de la vista hasta la etiqueta BODY.
Si no se utiliza ningún parámetro, los nodos de contexto se basan en la selección actual. Si se usan parámetros, los nodos de contexto devueltos son los que se devolverían en función de la selección que se obtendría al llamar al SelectNodes(IXMLDOMNode, Object, Object) método .
Nota: El método GetContextNodes no devolverá nodos en función de la selección actual si se usa en el OnClick caso 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 GetContextNodes de una barra de tareas, menú o panel de tareas personalizado.