Событие _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