Cómo: Trabajar con vistas usando 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 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
Los métodos y propiedades de la interfaz ViewObject no están disponibles durante el evento OnLoad.
Nombre | Descripción |
---|---|
Método DisableAutoUpdate |
Deshabilita la sincronización entre el Modelo de objetos de documento (DOM) XML y la vista. |
Método EnableAutoUpdate |
Habilita la sincronización entre el XML DOM y la vista. |
Método ExecuteAction |
Ejecuta una acción de edición de InfoPath. |
Método Export |
Exporta la vista como archivo del formato especificado. |
Método ForceUpdate |
Sincroniza el XML DOM y la vista. |
Método GetContextNodes |
Devuelve una referencia a la interfaz XMLNodesCollection, basándose en el nodo XML especificado y el contexto de la vista o en la selección actual de la vista. |
Método GetSelectedNodes |
Devuelve una referencia a la interfaz XMLNodesCollection, basándose en la selección actual de la vista. |
Método SelectNodes |
Selecciona un rango de nodos XML de la vista. |
Método SelectText |
Selecciona el texto contenido en el nodo XML especificado de la vista. |
Método SwitchView |
Cambia el formulario de InfoPath a la vista especificada |
Propiedad Name |
Devuelve un valor de cadena que indica el nombre de la vista actual. |
Propiedad Window |
Devuelve una referencia a la interfaz WindowObject que tiene acceso al objeto Window asociado a la vista. |
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
El acceso al objeto ViewObject se obtiene a través de la propiedad View de la interfaz XDocument (a la que se obtiene acceso a través de la variable thisXDocument
que se inicializa en el método _Startup
de la clase de código del formulario). Por ejemplo, el siguiente ejemplo de código muestra cómo utilizar el método Alert de la interfaz UIObject para visualizar 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