次の方法で共有


_XDocumentEventSink2_Event.OnVersionUpgrade イベント

開かれようとしている Microsoft Office InfoPath 2007 フォームのバージョン番号がその基になっているフォーム テンプレートのバージョン番号よりも古いと発生します。

名前空間: Microsoft.Office.Interop.InfoPath.SemiTrust
アセンブリ: Microsoft.Office.Interop.InfoPath.SemiTrust (microsoft.office.interop.infopath.semitrust.dll 内)

構文

'宣言
Event OnVersionUpgrade As _XDocumentEventSink2_OnVersionUpgradeEventHandler
'使用
Dim instance As _XDocumentEventSink2_Event
Dim handler As _XDocumentEventSink2_OnVersionUpgradeEventHandler

AddHandler instance.OnVersionUpgrade, handler
event _XDocumentEventSink2_OnVersionUpgradeEventHandler OnVersionUpgrade

コメント

このイベント ハンドラでは、ユーザーが操作をキャンセルできます。

OnVersionUpgrade イベントでは、フォームの基になる XML ドキュメントが読み取り専用モードになり、フォームに関連付けられた XML スキーマに対して検証されません。VersionUpgradeEventObject オブジェクトの ReturnStatus プロパティが false に設定されている場合は、フォームを開く操作がキャンセルされます。OnVersionUpgrade イベントに関するコードでエラーが発生した場合は、そのエラーが無視され、VersionUpgradeEventObject オブジェクトの ReturnStatus プロパティに応じて処理が実行されます。ReturnStatus プロパティが明示的に設定されていない場合は、既定値 true が使用されます。

メモメモ :

フォーム テンプレートの OnVersionUpgrade イベントを処理するイベント ハンドラを作成する場合は、実際にそのハンドラを動作させる前に、フォーム定義ファイル (.xsf) を開いて documentVersionUpgrade 要素のオプションの useScriptHandler 要素を含める必要があります。

次の例では、VersionUpgradeEventObject オブジェクトの DocumentVersion プロパティおよび SolutionVersion プロパティを使用して、フォームおよびフォーム テンプレートのバージョン番号を表示しています。

[InfoPathEventHandler(EventType=InfoPathEventType.OnVersionUpgrade)]
public void OnVersionUpgrade(VersionUpgradeEvent e)
{
 thisXDocument.UI.Alert("The form version: " + e.DocumentVersion + 
  "\nThe form template version: " + e.SolutionVersion);
 e.ReturnStatus = true;
}

関連項目

参照

_XDocumentEventSink2_Event インターフェイス
_XDocumentEventSink2_Event のメンバ
Microsoft.Office.Interop.InfoPath.SemiTrust 名前空間