Trabajar con vistas mediante el modelo de objetos de InfoPath 2003

Cuando se trabaja con una plantilla de formulario de InfoPath, es posible escribir código para tener acceso a las vistas del formulario y, a continuación, efectuar diversas acciones con los datos que contienen. El modelo de objetos compatible con InfoPath 2003 admite el acceso a las vistas de un formulario mediante el uso de los miembros de la interfaz ViewObject .

Información general sobre la interfaz ViewObject

La interfaz ViewObject proporciona el método y las propiedades siguientes que los desarrolladores de formularios pueden utilizar para interactuar con una vista de InfoPath.

Nota:

[!NOTA] Los métodos y las propiedades de la interfaz ViewObject no están disponibles durante el evento OnLoad .

Name Descripción
DisableAutoUpdate ( método)
Deshabilita la sincronización entre Document Object Model (DOM) XML y la vista.
EnableAutoUpdate ( método)
Habilita la sincronización entre el XML DOM y la vista.
ExecuteAction (método)
Ejecuta una acción de edición de InfoPath.
Export ( método)
Exporta la vista como archivo del formato especificado.
ForceUpdate ( método)
Sincroniza el XML DOM y la vista.
Método GetContextNodes
Devuelve una referencia a la interfaz XMLNodesCollection , basada en el nodo XML y el contexto de vista especificados o en la selección actual en la vista.
Método GetSelectedNodes
Devuelve una referencia a la interfaz XMLNodesCollection, basándose en la selección actual de la vista.
SelectNodes (método)
Selecciona un rango de nodos XML de la vista.
SelectText (método)
Selecciona el texto contenido en el nodo XML especificado de la vista.
SwitchView ( método)
Cambia el formulario de InfoPath a la vista especificada
Propiedad Name
Devuelve un valor de cadena que indica el nombre de la vista actual.
Window (propiedad)
Devuelve una referencia a la interfaz WindowObject que tiene acceso a la ventana asociada a la vista.

Nota:

[!NOTA] El modelo de objetos compatible con InfoPath 2003 también proporciona la interfaz ViewInfosCollection , que se puede utilizar para obtener información sobre todas las vistas implementadas en un formulario.

Uso de la interfaz ViewObject

Se obtiene acceso a la interfaz ViewObject a través de la propiedad View de la interfaz XDocument (a la que se accede a través de la thisXDocument variable que se inicializa en el _Startup método de la clase de código de formulario). Por ejemplo, el siguiente ejemplo de código muestra cómo utilizar el método Alert de la interfaz UIObject para mostrar un cuadro de mensaje con el nombre de la vista actual asociada al documento XML subyacente del formulario.

thisXDocument.UI.Alert("Current view name: " + 
   thisXDocument.View.Name);
thisXDocument.UI.Alert("Current view name: " & _
   thisXDocument.View.Name)

Todos los formularios de InfoPath contienen al menos una vista predeterminada; sin embargo, InfoPath admite también la creación de varias vistas del documento XML subyacente de un formulario. Cuando un formulario tiene varias vistas, el objeto View se puede utilizar para trabajar con la que esté activa. Es posible cambiar mediante programación la vista activa utilizando el método SwitchView del objeto View, como demuestra el ejemplo de código siguiente:

thisXDocument.View.SwitchView("MySecondView");
thisXDocument.View.SwitchView("MySecondView")

El ejemplo anterior (cambiar a una vista) sólo funcionará una vez abierto el formulario. Para establecer una vista predeterminada durante el evento OnLoad, utilice la propiedad IsDefault de la interfaz ViewInfoObject , como se muestra en el ejemplo siguiente:

thisXDocument.ViewInfos["MyDefaultView"].IsDefault = true;
thisXDocument.ViewInfos("MyDefaultView").IsDefault = True