如何使一个事件处理程序适用于C#中的多个控件?

Nic*_*ann 6 c# controls

在Visual Basic中,我知道该怎么做,但我是新的C#,所以你们可以告诉我,我该怎么做一个"私人无效"与应用相同的事件,多个控件鼠标悬停?有一个例子:

private void button1, button2, button3, button4_MouseHover(object sender, EventArgs e)
{
     btn.Image = pic
}
Run Code Online (Sandbox Code Playgroud)

stu*_*rtd 15

只需声明一个事件处理程序并指向它的每个按钮:

private void Common_MouseHover(object sender, EventArgs e)
{
     Button btn = sender as Button;
     if (btn != null)
         btn.Image = pic
}
Run Code Online (Sandbox Code Playgroud)

然后在代码或设计师:

button1.MouseHover += Common_MouseHover;
button2.MouseHover += Common_MouseHover;
.. etc
Run Code Online (Sandbox Code Playgroud)