【发布时间】:2013-02-11 04:23:28
【问题描述】:
我有一个UserControl,其中包含一些内部控件。像这样:
现在,当我在我的项目中使用它时,我希望我的控件的每个点在被点击时都会引发相同的点击事件,就像其他控件一样。
但问题是:我的处理程序在另一个项目中,仅在我单击背景上的某个位置时处理单击事件,而不是在 button1 或 label1 上。
我可以通过设置内部控件中的每个事件为主控件引发另一个事件来解决它,但这有点奇怪。
如何让内部控件不覆盖主控件的事件?
【问题讨论】:
-
有点奇怪,那你怎么触发按钮点击呢?那你为什么需要一个按钮?
-
@NikolaDavidovic 好吧,您可以为整个 UC 中的任何单击设置一个处理程序,并在仅单击按钮时运行另一个处理程序。每个事件可以有多个处理程序,因此没有什么可以阻止它。
-
@Servy True 但我期待 OP 的回答,这样他会澄清问题,我们可以提供更好的答案。
-
@Nikola 嗨,这只是一个例子。我们可以说一个图片框和一个标签或其他东西..例如一个旁边有一个图标的控件。
-
@Blazi 那么在这种情况下,我想不出比将相同的 Click 处理程序分配给所有控件的 Click 事件更好的方法了。
标签: c# vb.net winforms user-controls