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


Событие _XDocumentEventSink2_Event.OnSaveRequest

Происходит, когда операция сохранения вызывается из пользовательского интерфейса Microsoft Office InfoPath 2007 или с использованием методов Save или SaveAs.

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

Синтаксис

'Декларация
Event OnSaveRequest As _XDocumentEventSink2_OnSaveRequestEventHandler
'Применение
Dim instance As _XDocumentEventSink2_Event
Dim handler As _XDocumentEventSink2_OnSaveRequestEventHandler

AddHandler instance.OnSaveRequest, handler
event _XDocumentEventSink2_OnSaveRequestEventHandler OnSaveRequest

Заметки

Если свойству ReturnStatus объекта SaveEventObject присвоено значение false, InfoPath отменяет операцию сохранения. Если в коде для события OnSaveRequest происходит ошибка, InfoPath игнорирует ошибку и использует свойство ReturnStatus объекта SaveEventObject. Если свойство ReturnStatus не задано явно, используется значение по умолчанию false.

Свойство ReturnStatus работает вместе со свойством IsCancelled, когда форма InfoPath закрывается. Если в документе есть несохраненные изменения, и пользователь отменяет операцию сохранения, свойству IsCancelled можно присвоить значение true, чтобы закрыть InfoPath.

Пример

[InfoPathEventHandler(EventType=InfoPathEventType.OnSaveRequest)]
public void OnSaveRequest(SaveEvent e)
 {
  if(thisXDocument.DOM.selectSingleNode("//my:field2").text == "")
   thisXDocument.UI.Alert("Field2 is empty.\nYou cannot save the form.");
  else
e.IsCancelled = e.PerformSaveOperation();
// set ReturnStatus to false if you want InfoPath
// to show an additional error message
e.ReturnStatus = true;
}

См. также

Ссылка

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