what is the equivalent of visual basic withevents and handles in C#

12,293

In C# you enrol an EventHandler by registering a method delegate with the event using the += operator as follows:

public Timer tim = new Timer();
tim.Tick += Timer1_Tick;

private void Timer1_Tick(object sender, EventArgs e)
{
   // Event handling code here
} 

This works because the Tick event of the Timer class implements an Event as follows:

public event EventHandler Tick

and EventHandler is a method delegate with signature:

public delegate void EventHandler(
    Object sender,
    EventArgs e
)

which is why any method that conforms to the EventHandler signature can be used as a handler.

Share:
12,293
Emrah KONDUR
Author by

Emrah KONDUR

Updated on June 04, 2022

Comments

  • Emrah KONDUR
    Emrah KONDUR almost 2 years

    I try to convert a Visual Basic (VB) project to C# and I have no idea how to change some of codes below,

    In a windows form a field and a Timer object defined like this;

    Public WithEvents tim As New Timer
    ...
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tim.Tick
    End Sub
    ...
    

    How to rewrite this lines in C#?