Поделиться через


Интерфейс DocContextChangeEventObject

Объект события, используемый во время события смены контекста Microsoft Office InfoPath 2007.

 

Пространство имен: Microsoft.Office.Interop.InfoPath.SemiTrust
Сборка: Microsoft.Office.Interop.InfoPath.SemiTrust (в microsoft.office.interop.infopath.semitrust.dll)

Синтаксис

'Декларация
<CLSCompliantAttribute(False)> _
<CoClassAttribute(GetType(DocContextChangeEventObjectWrapper))> _
<GuidAttribute("096cd6d2-0786-11d1-95fa-0080c78ee3bb")> _
Public Interface DocContextChangeEventObject
    Inherits DocContextChangeEvent, DocEvent
'Применение
Dim instance As DocContextChangeEventObject
[CLSCompliantAttribute(false)] 
[CoClassAttribute(typeof(DocContextChangeEventObjectWrapper))] 
[GuidAttribute("096cd6d2-0786-11d1-95fa-0080c78ee3bb")] 
public interface DocContextChangeEventObject : DocContextChangeEvent, DocEvent

Заметки

Этот тип является программой-оболочкой для компонентного класса, которого требует управляемый программный код для COM-взаимодействия. Используйте этот тип для доступа к членам интерфейса COM, созданного этим компонентным классом. Дополнительные сведения об интерфейсе COM, включая ссылку на описания его членов, см. в статье DocContextChangeEvent.

Объект DocContextChangeEvent содержит ряд свойств, которые можно использовать во время смены контекста, чтобы программно взаимодействовать с данными базового документа XML формы для обеспечения контекстной обратной связи с пользователем или выполнения других действий.

Объект DocContextChangeEvent передается как параметр событию OnContextChange.

Объект DocContextChangeEvent используется для получения сведений об узле модели объектов документа XML (DOM), который является текущим контекстом для базового документа XML формы. Кроме того, он содержит сведения о типе смены контекста и о том, произошла ли смена контекста в ответ на операцию отмены или повтора, произведенную пользователем.

Свойство Type возвращает только значение "ContextNode" для смены контекста в Microsoft Office InfoPath 2007. Однако, если код обработчика событий выполняет действия, зависящие от текущих функциональных возможностей, этот код по-прежнему должен проверять значение свойства Type, поскольку будущие версии InfoPath могут использовать другие значения для разных смен контекста.

Когда свойству IsUndoRedo присвоено значение true, это означает, что смена контекста была вызвана операцией отмены или повтора действия, а не явным изменением контекста пользователя. Действия, выполненные в событии OnContextChange, которые модифицируют XML DOM, должны не выполняться в ответ на действия отмены или повтора, поскольку они могут конфликтовать с намерением пользователя вернуть данные в предыдущее состояние.

Пример

В следующем примере, узел lastChanged обновляется в ответ на изменения контекста:

[InfoPathEventHandler(EventType=InfoPathEventType.OnContextChange)]
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;
 }
}

См. также

Ссылка

Члены DocContextChangeEventObject
Пространство имен Microsoft.Office.Interop.InfoPath.SemiTrust