我有一个自定义控件,可以多次添加到一个窗体中。此自定义控件可以在同一窗体上多次出现。这些控件由用户添加和删除。用户可以在自定义控件内的某个控件上单击鼠标右键以显示菜单。
从该菜单中选择项目时,应在窗体上引发一个事件。我创建了一个自定义事件,并意识到如果控件是动态添加的,它就不能使用,因为窗体不知道它。我无法添加引用不存在的控件的事件处理程序。有没有其他方法可以在窗体上从自定义控件引发事件,而不需要窗体知道它?顺便说一句,我的自定义控件被添加到FlowLayoutPanel中。谢谢你的帮助!
发布于 2012-03-29 23:58:32
在添加控件时,只需在代码中连接事件处理程序,例如
MyButton.Click += ButonClickEventHandler;
Page.Controls.Add(MyButton)发布于 2012-03-30 00:40:38
同意Ben的观点--否则,会有一些混乱的方法(取决于你的控件是如何设置的)。您可以始终使用泛型回调方法,并使用自定义事件参数来确定是谁触发了它。
https://stackoverflow.com/questions/9928971
复制相似问题