Handles-component (Visual Basic)
Declareert dat een procedure een opgegeven gebeurtenis afhandelt.
Syntaxis
proceduredeclaration Handles eventlist
generator
proceduredeclaration
De Sub
proceduredeclaratie voor de procedure die de gebeurtenis afhandelt.
eventlist
Lijst met de gebeurtenissen die moeten proceduredeclaration
worden verwerkt, gescheiden door komma's. De gebeurtenissen moeten worden gegenereerd door de basisklasse voor de huidige klasse of door een object dat is gedeclareerd met behulp van het WithEvents
trefwoord.
Opmerkingen
Gebruik het Handles
trefwoord aan het einde van een proceduredeclaratie om ervoor te zorgen dat deze gebeurtenissen verwerkt die zijn gegenereerd door een objectvariabele die is gedeclareerd met behulp van het WithEvents
trefwoord. Het Handles
trefwoord kan ook worden gebruikt in een afgeleide klasse om gebeurtenissen van een basisklasse te verwerken.
Met Handles
het trefwoord en de AddHandler
instructie kunt u beide opgeven dat bepaalde procedures bepaalde gebeurtenissen verwerken, maar er zijn verschillen. Gebruik het trefwoord bij het Handles
definiƫren van een procedure om op te geven dat een bepaalde gebeurtenis wordt verwerkt. De AddHandler
instructie verbindt procedures met gebeurtenissen tijdens runtime. Zie AddHandler-instructie voor meer informatie.
Voor aangepaste gebeurtenissen roept de toepassing de toegangsfunctie van AddHandler
de gebeurtenis aan wanneer deze de procedure toevoegt als een gebeurtenis-handler. Zie Gebeurtenisinstructie voor meer informatie over aangepaste gebeurtenissen.
Voorbeeld 1
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
In het volgende voorbeeld ziet u hoe een afgeleide klasse de Handles
instructie kan gebruiken om een gebeurtenis van een basisklasse af te handelen.
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
Voorbeeld 2
Het volgende voorbeeld bevat twee gebeurtenis-handlers voor een WPF-toepassingsproject .
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
Voorbeeld 3
Het volgende voorbeeld is gelijk aan het vorige voorbeeld. De eventlist
component bevat Handles
de gebeurtenissen voor beide knoppen.
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