例如,我有一个userControl,我希望用户能够“选择”。
以下是我正在使用的代码:
private void ptbImage_Click(object sender, EventArgs e)
{
SelectControl();
}
private void SelectControl()
{
this.BackColor = Color.FromArgb(235, 243, 253);
}
如果我在这个用户控件中有很多控件,很快就会变得混乱! :P是否有全局环绕每个控件?就像控件内部所有内容的Click事件一样。如果没有,我将手动创建一个单击,即使每个控件全局捕获输入。谢谢!
答案 0 :(得分:1)
...是
您可以将每个控件的事件链接到相同的事件方法,如下所示:
ptbImage1.Click += new System.EventHandler(ptbImage_Click);
ptbImage2.Click += new System.EventHandler(ptbImage_Click);
ptbImage3.Click += new System.EventHandler(ptbImage_Click);
等。
答案 1 :(得分:0)
在窗体的InitializeComponent方法中,您可以通过窗体上的每个控件运行foreach,并将Click事件处理程序设置为ptbImage_Click
答案 2 :(得分:0)
foreach (Control ctrl in yourContainerControl.Controls) {
ctrl.Click += new System.EventHandler(ctrl_Click);
}
您还可以在应用程序范围内捕获事件,并在将它们定向到控件本身之前对其进行处理。