现在有一个自定义用户控件,上面有三个picturebox控件,将自定义控件完全覆盖。然后生成dll文件,将其放在工具栏。在另外一个项目中,将其拖动到窗口,然后试图响应鼠标点击事件,结果发现失败了。其原因是点击这个控件时,响应的是三个picturebox的点击事件。请问,该如何做到,当单击这个控件时,能响应它的MouseClick事件,而不是picturebox的?

解决方案 »

  1.   

    1.你的三个picturebox控件,将主控件完全覆盖,那你什么点击 主控件
    2.或者你拖出主控件,然后然主控制注册Click事件(userControl1.OnClick+=....),外部写一个按钮什么的手工调用那么事件函数。
      

  2.   

    这个方法不错,比较简单,不过如果是别的控件而不是picturebox的话,控件会变灰了。
      

  3.   

    谢谢,不过我已经自己解决啦。
    在自定义控件那里声明一个事件MyMouseClick,然后在三个picturebox的鼠标点击事件调用。在另一个项目使用这个自定义控件的时候把鼠标点击事件绑定到MyMouseClick就行了.