首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

组合控件中,前面的控件挡住了后面的控件如何避免

2012-05-16 
组合控件中,前面的控件挡住了后面的控件如何处理?比如,一个UserControl1上放了个button1,UserControl1注册

组合控件中,前面的控件挡住了后面的控件如何处理?
比如,一个UserControl1上放了个button1,UserControl1注册了MouseEnter事件UMouseEnter1,这样鼠标进入就会响应,但是当鼠标挪到button1上时,则不会响应UserControl1的UMouseEnter1。

如果将button1的MouseEnter事件也注册到UMouseEnter1,这样这个UMouseEnter1就会执行两次。有木有好的办法?

当然也不能将button1的enable设为false,因为button1还要响应别的事件。

[解决办法]
uMouseEnter1(object sender,MouseEventArgs e )
{
Button b = sender as Button;
if(b==null)
{
//。。。。
}
}
[解决办法]
button的 MouseEnter中调用usercontrol的 MouseEnter 方法,但注意的是鼠标位置,还可以自定义事件,为usercontrol指定统一的事件

google “c# 自定义事件”

热点排行