Compartir a través de


View.ExecuteAction(String, Object) Método

Definición

Ejecuta un comando de edición de Microsoft InfoPath en el documento XML subyacente de un formulario, en función de los datos seleccionados en la vista.

public:
 void ExecuteAction(System::String ^ bstrAction, System::Object ^ varXmlToEdit);
public void ExecuteAction (string bstrAction, object varXmlToEdit);
abstract member ExecuteAction : string * obj -> unit
Public Sub ExecuteAction (bstrAction As String, 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.

Importante: Solo se puede acceder a este miembro mediante formularios que se ejecutan en el mismo dominio que el formulario abierto actualmente o mediante formularios a los que se han concedido permisos entre dominios.

Se aplica a