How make one event handler that applies to multiple controls in C#?
In Visual Basic I knew how to do it, but I'm new to C#, so can you guys tell me how do I make a "private void" with mouse hover that applies the same event to multiple controls? There's an example:
private void button1, button2, button3, button4_MouseHover(object sender, EventArgs e)
{
btn.Image = pic
}
Just declare one event handler and point each button at it:
private void Common_MouseHover(object sender, EventArgs e)
{
Button btn = sender as Button;
if (btn != null)
btn.Image = pic
}
Then in code or designer:
button1.MouseHover += Common_MouseHover;
button2.MouseHover += Common_MouseHover;
// .. etc
When you subscribe to the event on a button, it's just a standard event handler:
button1.Click += myEventHandler;
You can use the same code to add handlers for every button:
button1.Click += myEventHandler;
button2.Click += myEventHandler;
button3.Click += myEventHandler;
button4.Click += myEventHandler;
button5.Click += myEventHandler;
button6.Click += myEventHandler;