Compartir a través de


DocContextChangeEventObject (Interfaz)

Objeto de evento que se usa durante un evento de cambio de contexto de Microsoft Office InfoPath 2007.

Espacio de nombres: Microsoft.Office.Interop.InfoPath
Ensamblado: Microsoft.Office.Interop.InfoPath (en microsoft.office.interop.infopath.dll)

Sintaxis

<CoClassAttribute(GetType(DocContextChangeEventObjectClass))> _
<GuidAttribute("096CD6D2-0786-11D1-95FA-0080C78EE3BB")> _
Public Interface DocContextChangeEventObject
    Inherits DocContextChangeEvent

Dim instance As DocContextChangeEventObject
[CoClassAttribute(typeof(DocContextChangeEventObjectClass))] 
[GuidAttribute("096CD6D2-0786-11D1-95FA-0080C78EE3BB")] 
public interface DocContextChangeEventObject : DocContextChangeEvent

Comentarios

Este tipo es un contenedor para una coclase que necesita el código administrado para su interoperabilidad COM. Use este tipo para obtener acceso a los miembros de la interfaz COM implementada por esta coclase. Para obtener información sobre la interfaz COM, así como un vínculo a descripciones de sus miembros, vea DocContextChangeEvent.

El objeto DocContextChangeEvent proporciona varias propiedades que se pueden usar en un cambio de contexto para interactuar mediante programación con los datos del documento XML subyacente de un formulario a fin de proporcionar respuesta contextual al usuario o para realizar acciones por él.

El objeto DocContextChangeEvent se pasa como parámetro al evento OnContextChange.

El objeto DocContextChangeEvent se usa para obtener información sobre el nodo del Modelo de objetos de documentos (DOM) XML, que es el contexto actual del documento XML subyacente del formulario. Además, proporciona información sobre el tipo de cambio de contexto y sobre si dicho cambio sucedió en respuesta a una operación deshacer o rehacer realizada por el usuario.

La propiedad Type sólo devuelve el valor "ContextNode" para los cambios de contexto de Microsoft InfoPath 2003 Service Pack 1. No obstante, si el código de un controlador de eventos realiza acciones que dependen de la funcionalidad actual, éste deberá diseñarse para que se compruebe el valor de la propiedad Type, ya que es posible que las futuras versiones de InfoPath utilicen valores distintos para cambios de contexto diferentes.

Si la propiedad IsUndoRedo es true, el cambio de contexto se produjo debido a una operación deshacer o rehacer, más que por un cambio de contexto explícito provocado por el usuario. Deberían evitarse las operaciones realizadas en un evento OnContextChange que modifiquen el DOM XML en respuesta a acciones deshacer o rehacer, ya que pueden interferir con la intención del usuario de revertir datos a un estado anterior.

Ejemplo

En el ejemplo siguiente, un nodo denominado lastChanged se actualiza en respuesta a cambios de contexto:

public void OnContextChange(DocContextChangeEvent e)
{
 if ( e.Type == "ContextNode" && !e.IsUndoRedo )
 {
  IXMLDOMNode contextNode = e.Context;
  IXMLDOMNode lastChangedNode = thisXDocument.DOM.selectSingleNode("/my:myRoot/my:lastChanged");
  lastChangedNode.text = contextNode.nodeName;
 }
}

Vea también

Referencia

DocContextChangeEventObject (Miembros)
Microsoft.Office.Interop.InfoPath (Espacio de nombres)