次の方法で共有


RemoveHandler ステートメント

イベントとイベント ハンドラーの間の関連付けを削除します。

構文

RemoveHandler event, AddressOf eventhandler  

部品

任期 定義
event 処理されるイベントの名前。
eventhandler 現在イベントを処理しているプロシージャの名前。

注釈

AddHandlerおよびRemoveHandlerステートメントを使用すると、プログラムの実行中に、特定のイベントのイベント処理をいつでも開始および停止できます。

カスタム イベントの場合、 RemoveHandler ステートメントはイベントの RemoveHandler アクセサーを呼び出します。 カスタム イベントの詳細については、「 イベント ステートメント」を参照してください。

Sub TestEvents()
    Dim Obj As New Class1
    ' Associate an event handler with an event.
    AddHandler Obj.Ev_Event, AddressOf EventHandler
    ' Call the method to raise the event.
    Obj.CauseSomeEvent()
    ' Stop handling events.
    RemoveHandler Obj.Ev_Event, AddressOf EventHandler
    ' This event will not be handled.
    Obj.CauseSomeEvent()
    ' Associate an event handler with an event, using a lambda.
    ' This handler cannot be removed.
    AddHandler Obj.Ev_Event, Sub ()
        MsgBox("Lambda caught event.")
    End Sub
    ' This event will be handled by the lambda above.
    Obj.CauseSomeEvent()
End Sub

Sub EventHandler()
    ' Handle the event.
    MsgBox("EventHandler caught event.")
End Sub

Public Class Class1
    ' Declare an event.
    Public Event Ev_Event()
    Sub CauseSomeEvent()
        ' Raise an event.
        RaiseEvent Ev_Event()
    End Sub
End Class

こちらも参照ください