次の方法で共有


_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

コメント

SaveEventObject オブジェクトの ReturnStatus プロパティが false に設定されている場合は、保存操作がキャンセルされます。OnSaveRequest イベントに関するコードでエラーが発生した場合は、そのエラーが無視され、SaveEventObject オブジェクトの ReturnStatus プロパティに応じて処理が実行されます。ReturnStatus プロパティが明示的に設定されていない場合は、既定値 false が使用されます。

InfoPath フォームが閉じられるときには、ReturnStatus プロパティ以外に、IsCancelled プロパティも使用されます。ドキュメントが変更されたものの、まだ保存されないうちにユーザーが保存操作をキャンセルした場合は、そのドキュメントを保存できるように、IsCancelled プロパティを true に設定できます。

[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 名前空間