Event. An Event can have many methods attached to it. When that event is raised, all of those methods are executed. The Delegate keyword is used.
With AddHandler and RaiseEvent, we use Events. We use AddHandler to attach a method to an Event instance. And RaiseEvent causes all attached methods to run.
Here we introduce a simple module to explain events. We provide a Delegate Sub called "EventHandler." And an Event called "_show" is an EventHandler instance.
Start In Main we use the AddHandler keyword to attach EventHandlers to our Event. We create Delegate instances.
Next We use AddressOf to reference the Important1 and Important2 Subs as targets for the EventHandler delegate instances.
Tip We use RaiseEvent to cause an Event to be triggered (raised). The Important1 and Important2 Subs are executed.
Module Module1
Delegate Sub EventHandler()
Event _show As EventHandler
Sub Main()
' Use AddHandler to attach two EventHandlers to Event.
AddHandler _show, New EventHandler(AddressOf Important1)
AddHandler _show, New EventHandler(AddressOf Important2)
' Use RaiseEvent to run all handlers for this event.
RaiseEvent _show()
End Sub
Sub Important1()
' Do something important.
Console.WriteLine("Important1")
End Sub
Sub Important2()
' Do something else that is also important.
Console.WriteLine("Important2")
End Sub
End ModuleImportant1
Important2
With Events, a single entry point can invoke many methods. This is powerful. But in VB.NET we usually use Events in Windows Forms or WPF programs. Events help with GUI development.
Note In a GUI a button click will cause an event to be raised. We can run any number of methods when a click occurs.
WithEvents. Another syntax form can be used to add events in VB.NET. We can use the WithEvents keyword and the Handles keyword on event-handlers.
With Event, AddHandler and RaiseEvent we develop powerful event-based approaches. The Delegate keyword helps with AddHandler. We use it to reference methods as objects.
Dot Net Perls is a collection of pages with code examples, which are updated to stay current. Programming is an art, and it can be learned from examples.
Donate to this site to help offset the costs of running the server. Sites like this will cease to exist if there is no financial support for them.
Sam Allen is passionate about computer languages, and he maintains 100% of the material available on this website. He hopes it makes the world a nicer place.
This page was last updated on Dec 24, 2024 (simplify).