Attaching an Event Handler
Whenever I need to attach an event handler, usually I use one of these methods, a delegate, anonymous method, or lambda expression.
For complex events (more than 3 lines of code), I create a separate method. If the method is short, I use anonymous method. But if the event is just one line, I use lambda expression.
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show("Hello World!");
}
private void Form1_Load(object sender, EventArgs e)
{
//This is good for complex events.
button1.Click += button1_Click;
//Anonymous method, suitable for short event.
button2.Click += delegate(object obj, EventArgs arg)
{
MessageBox.Show("Hello World!");
};
//Lambda expression, great for one line event.
button3.Click += ((x, y) => MessageBox.Show("Hello World!"));
}