How make one event handler that applies to multiple controls in C#?

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

Leave a Comment