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#?
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.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With