DocContextChangeEventObject, interface

Un événement d'objet utilisé pendant un événement de changement de contexte Microsoft Office InfoPath 2007.

Espace de noms : Microsoft.Office.Interop.InfoPath
Assembly : Microsoft.Office.Interop.InfoPath (dans microsoft.office.interop.infopath.dll)

Syntaxe

<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

Remarques

Ce type est le wrapper d'une classe de composants (coclass) requise par le code managé pour l'interopérabilité COM. Ce type permet d'accéder aux membres de l'interface COM implémentés par cette classe de composants. Pour plus d'informations sur l'interface COM, et pour accéder aux descriptions de ses membres, voir DocContextChangeEvent.

L'objet DocContextChangeEvent fournit un certain nombre de propriétés qui peuvent être utilisées lors d'une modification de contexte pour interagir par programme avec les données du document XML sous-jacent d'un formulaire, afin d'offrir un commentaire contextuel à l'utilisateur ou d'effectuer des actions pour lui.

L'objet DocContextChangeEvent est transmis en tant que paramètre à l'événement OnContextChange.

L'objet DocContextChangeEvent permet de récupérer les informations du nœud XML DOM (Document Object Model) qui représente le contexte actuel du document XML sous-jacent du formulaire. En outre, il indique la nature de la modification du contexte et si cette modification s'est produite en réponse à une opération d'annulation ou de rétablissement d'une action effectuée par l'utilisateur.

La propriété Type renvoie uniquement la valeur « ContextNode » des changements de contexte dans Microsoft InfoPath 2003 Service Pack 1. Néanmoins, si le code d'un gestionnaire d'événements effectue des actions qui dépendent de la fonctionnalité active, ce code doit toujours être conçu de manière à vérifier la valeur de la propriété Type, car les versions ultérieures d'InfoPath risquent d'utiliser des valeurs différentes pour d'autres modifications de contexte.

Lorsque la propriété IsUndoRedo a la valeur true, cela signifie que la modification du contexte est due à une opération d'annulation ou de rétablissement d'une action plutôt qu'à une modification explicite du contexte utilisateur. Il est conseillé d'éviter d'effectuer des opérations qui modifient XML DOM dans le cadre de l'événement OnContextChange, en réponse aux opérations d'annulation ou de rétablissement d'action, car elles risquent d'interférer avec l'intention de l'utilisateur de restaurer des données à un état antérieur.

Exemple

Dans l'exemple suivant, un nœud nommé lastChanged est mis à jour en réponse à des modifications de contexte :

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;
 }
}

Voir aussi

Référence

Membres DocContextChangeEventObject
Microsoft.Office.Interop.InfoPath, espace de noms