Handles — Klauzula (Visual Basic)

Oświadcza, że procedura obsługi określonego zdarzenia.

proceduredeclaration Handles eventlist

Części

  • proceduredeclaration
    Sub Procedurę zgłoszenia do procedury, który będzie obsługiwał zdarzenia.

  • eventlist
    Lista zdarzeń dla proceduredeclaration do obsługi, oddzielonych przecinkami.Zdarzenia musi zostać podniesiony, albo klasa bazowa dla bieżącej klasy lub obiektu zadeklarowane za pomocą WithEvents słowa kluczowego.

Uwagi

Użyj Handles słowa kluczowego na końcu deklaracji procedury spowodować obsłużyć zdarzenia wywoływane przez zmienną obiektu zadeklarowane za pomocą WithEvents słowa kluczowego.Handles Można również można użyć słowa kluczowego w klasie pochodnej obsługiwać zdarzenia z klasy bazowej.

Podpis procedura musi odpowiadać podpisy każde zdarzenie w eventlist.

Handles Słowa kluczowego i AddHandler instrukcji zarówno umożliwiają określenie, że szczególne procedury obsługi zdarzeń w szczególności, ale występują różnice.Użyj Handles słowa kluczowego podczas definiowania procedury, aby określić, że obsługuje on określonego zdarzenia.AddHandler Instrukcji łączy procedur zdarzeń w czasie wykonywania.Aby uzyskać więcej informacji, zobacz AddHandler — Instrukcja.

Dla zdarzeń niestandardowych, aplikacja wywołuje zdarzenie AddHandler akcesor podczas procedury dodawany jako program obsługi zdarzeń.Aby uzyskać więcej informacji dotyczących zdarzeń niestandardowych, zobacz Event — Instrukcja.

Przykład

Public Class ContainerClass
    ' Module or class level declaration. 
    WithEvents Obj As New Class1

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

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

    ' Call the TestEvents procedure from an instance of the ContainerClass  
    ' class to test the Ev_Event event and the event handler. 
    Public Sub TestEvents()
        Obj.CauseSomeEvent()
    End Sub 
End Class

Poniższy przykład demonstruje, jak można użyć klasy pochodne Handles instrukcji obsługi zdarzenia z klasy bazowej.

Public Class BaseClass
    ' Declare an event. 
    Event Ev1()
End Class 
Class DerivedClass
    Inherits BaseClass
    Sub TestEvents() Handles MyBase.Ev1
        ' Add code to handle this event. 
    End Sub 
End Class

Poniższy przykład zawiera dwa uchwyty zdarzeń przycisku dla Aplikacji WPF projektu.

Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub 

Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button2.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub

Poniższy przykład jest równoważne z poprzedniego przykładu.eventlist w Handles klauzula zawiera zdarzenia dla obu przycisków.

Private Sub Button_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click, Button2.Click
    MessageBox.Show(sender.Name & " clicked")
End Sub

Zobacz też

Informacje

WithEvents (Visual Basic)

AddHandler — Instrukcja

RemoveHandler — Instrukcja

Event — Instrukcja

RaiseEvent — Instrukcja

Inne zasoby

Zdarzenia (Visual Basic)