View.ExecuteAction(String, 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í.
Ejecuta un comando de edición de Microsoft Office InfoPath 2003 en el documento XML subyacente de un formulario, en función de los datos seleccionados en la vista.
public void ExecuteAction (string bstrAction, object varXmlToEdit);
abstract member ExecuteAction : string * obj -> unit
Public Sub ExecuteAction (bstrAction As String, Optional varXmlToEdit As Object)
Parámetros
- bstrAction
- String
Nombre de la acción de edición que se va a realizar.
- varXmlToEdit
- Object
Nombre del campo o grupo al que se aplicará la acción de edición. Equivale al valor del atributo name del elemento xmlToEdit del archivo de definición de formulario (.xsf).
Ejemplos
En el ejemplo siguiente, el método ExecuteAction del ViewObject objeto se usa para eliminar los datos seleccionados y colocarlos en el Portapapeles:
thisXDocument.View.<span class="label">ExecuteAction</span>("Cut", Type.Missing);
En el ejemplo siguiente, el método ExecuteAction del ViewObject objeto se usa para insertar datos mediante el componente de edición xCollection, en función del contexto seleccionado:
thisXDocument.View.<span class="label">ExecuteAction</span>("xCollection::insert", "group1_1");
Comentarios
El método ExecuteAction se utiliza para realizar acciones de edición de programación integradas en InfoPath en el documento XML subyacente del formulario, de acuerdo con el contexto seleccionado en una vista.
La acción que se ejecuta será la misma que se utilizaría al hacer clic en el botón de menú o barra de herramientas equivalente; es decir, una acción para la que el elemento de botón del archivo .xsf tenga un los atributos xmlToEdit y action correspondientes. Al igual que cuando se utiliza un botón, la acción se basará en la selección actual: se aplicará al contexto seleccionado (y, en caso de que la selección suponga que el botón está deshabilitado, el método ExecuteAction no tendrá efecto alguno).
Es posible establecer primero el contexto de selección mediante el SelectNodes(IXMLDOMNode, Object, Object) método o SelectText(IXMLDOMNode, Object) método y, a continuación, llamar al método ExecuteAction para actuar sobre ese contexto.
El método ExecuteAction devolverá un error por los siguientes motivos:
- El
bstrAction
parámetro no contiene un nombre de componente de edición válido. - El
varXmlToEdit
parámetro no coincide con un componente de edición definido en la vista. - El
varXmlToEdit
parámetro es necesario para una acción de edición específica. - La acción de edición no es aplicable al contexto seleccionado.
- A continuación se facilita una tabla de combinaciones de parámetros que se pueden utilizar con el método ExecuteAction.
"Copiar" | Copia los datos seleccionados en el portapapeles. |
"Pegar" | Copia los datos del portapapeles en el punto de inserción. |
"Cortar" | Quita los datos seleccionados y los copia en el portapapeles. |
"Eliminar" | Elimina los datos seleccionados. |
"xCollection::insert", "xmlToEdit " | Inserta datos de acuerdo con el contexto seleccionado utilizando el componente de edición xCollection. Si la selección actual se encuentra en un contenedor de xCollection, lo que se especifica mediante su elemento xmlToEdit en el archivo .xsf, se adjuntarán en ese contenedor los datos del elemento fragmentToInsert. |
"xCollection::insertBefore", "xmlToEdit " | Inserta datos antes del contexto seleccionado utilizando el componente de edición xCollection. Si la selección actual se encuentra dentro de un elemento de xCollection, lo que se especifica mediante su elemento xmlToEdit en el archivo .xsf, se insertarán los datos del elemento fragmentToInsert antes de ese elemento. |
"xCollection::insertAfter", "xmlToEdit " | Inserta datos después del contexto seleccionado utilizando el componente de edición xCollection. Si la selección actual se encuentra dentro de un elemento de xCollection, lo que se especifica mediante su elemento xmlToEdit en el archivo .xsf, se insertarán los datos del elemento fragmentToInsert después de ese elemento. |
"xCollection::remove", "xmlToEdit " | Elimina datos del contexto seleccionado utilizando el componente de edición xCollection. Si la selección actual se encuentra dentro de un elemento de xCollection, según lo especificado por su elemento xmlToEdit en el archivo .xsf, se eliminará dicho elemento. |
"xCollection::removeAll", "xmlToEdit " | Elimina todos los datos del contexto seleccionado utilizando el componente de edición xCollection. Si la selección actual se encuentra dentro de un contenedor de xCollection, según lo especificado por el elemento xmlToEdit en el archivo .xsf, esta acción eliminará todos los elementos de dicho contenedor. |
"xReplace::replace", "xmlToEdit " | Reemplaza los datos del contexto seleccionado utilizando el componente de edición xReplace. Si la selección actual se encuentra dentro de un elemento de xReplace, lo que se especifica mediante su elemento xmlToEdit en el archivo .xsf, ese elemento será reemplazado por los datos del elemento fragmentToInsert. |
"xOptional::insert", "xmlToEdit " | Inserta datos de acuerdo con el contexto seleccionado utilizando el componente de edición xOptional. Si la selección actual se encuentra en un contenedor de xOptional, lo que se especifica mediante su elemento xmlToEdit en el archivo .xsf, se adjuntarán en ese contenedor los datos del elemento fragmentToInsert. |
"xOptional::remove", "xmlToEdit " | Elimina datos del contexto seleccionado utilizando el componente de edición xOptional. Si la selección actual se encuentra dentro de un elemento de xOptional, según lo especificado por su elemento xmlToEdit en el archivo .xsf, se eliminará dicho elemento. |
Nota En algunos casos, llamar al método ExecuteAction desde para OnClick un botón de una vista puede producir un error. Esto se debe a que el contexto seleccionado cambia al botón cuando se hace clic en él. En este caso, es preferible utilizar un botón (o vínculo) de un panel de tareas personalizado, una barra de herramientas o un menú para llamar al método ExecuteAction.