EventManager クラス
フォーム テンプレートの InternalStartup メソッドでイベント ハンドラを初期化し、バインドするために使用します。
名前空間: Microsoft.Office.InfoPath
アセンブリ: Microsoft.Office.InfoPath (microsoft.office.infopath.dll 内)
構文
'宣言
Public MustInherit Class EventManager
'使用
Dim instance As EventManager
public abstract class EventManager
コメント
EventManager クラスは、マネージ コードのフォーム プレートで、FormCode クラスの先頭の InternalStartup メソッドで ControlEvents、FormEvents、および XmlEvents の各クラスによって実装されるすべてのイベントのイベント ハンドラをバインドするために InfoPath で使用します。実行時には、すべてのイベント ハンドラのバインドを初期化するために、フォーム テンプレートを開いたときに InternalStartup メソッドが実行されます。
メモ : |
---|
InfoPath でフォーム テンプレートが開かれている場合、ユーザーがそのフォーム テンプレートを開くたびに InternalStartup メソッドが呼び出されます。一方、Microsoft InfoPath Forms Services 2007、または InfoPath Forms Services を実行している Office SharePoint Server 2007 で適切に構成されたドキュメント ライブラリから、Web ブラウザでフォーム テンプレートを開くと、フォーム テンプレートのビジネス ロジック アセンブリがサーバー上の AppDomain に読み込まれたときに、InternalStartup メソッドが最初のみ呼び出されます。通常、これはセッション中にフォーム テンプレートのインスタンスを最初のユーザーが開いたときか、セッション中に AppDomain が再使用された場合に該当します。 |
例
次の例では、フォームの Loading イベント、フィールドの Changed イベント、および [ボタン] コントロールの Clicked イベントのイベント ハンドラを、対応する代理を使用してバインドするフォーム テンプレートの (FormCode.cs ファイルまたは FormCode.vb ファイルの) FormCode クラスの InternalStartup メソッドを示します。
重要 : |
---|
InternalStartup メソッドおよびその内部のイベント バインド コードは、さまざまなユーザー インターフェイス コマンドを使用してイベント ハンドラを追加するときに、InfoPath によって生成されます。自分で InternalStartup メソッドを作成したり、その内部に追加のコードを記述したりしないでください。インターフェイス コマンドを使用してイベント ハンドラを追加する方法については、「[方法] イベント ハンドラを追加する方法」を参照してください。 |
public void InternalStartup()
{
EventManager.FormEvents.Loading +=
new LoadingEventHandler(FormEvents_Loading);
EventManager.XmlEvents["/my:myFields/my:Name"].Changed +=
new XmlChangedEventHandler(Name_Changed);
((ButtonEvent)EventManager.ControlEvents["MyBtn"]).Clicked +=
new ClickedEventHandler(MyBtn_Clicked);
}
Private Sub InternalStartup(ByVal sender As Object, _
ByVal e As EventArgs) Handles Me.Startup
AddHandler EventManager.FormEvents.Loading, _
AddressOf FormEvents_Loading
AddHandler EventManager.XmlEvents("/my:myFields/my:Name").Changed, _
AddressOf Name_Changed
AddHandler DirectCast(EventManager.ControlEvents("MyBtn"), _
ButtonEvent).Clicked, AddressOf MyBtn_Clicked
End Sub
継承階層
System.Object
Microsoft.Office.InfoPath.EventManager
スレッド セーフ
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。