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

Control的Leave事件小疑点

2013-12-19 
Control的Leave事件小问题现在有2个Control A(TextBox) B(Button)A上注册有Leave事件 并在事件里写上弹Mes

Control的Leave事件小问题
现在有2个Control A(TextBox) B(Button)  A上注册有Leave事件 并在事件里写上弹MessageBox。  
private void TextBox_Leave(object sender, EventArgs e)
{
MessageBox.Show("Test");
}

现在要做的是我想用鼠标点击控件B,这时候焦点肯定是转移到B上了,这时候必然触发A上的Leave事件。

问题:
B上有没有一个事件是发生在A.Leave之前?换而言之就是有没有办法在我点击B的时候捕捉到B上的一个事件而且这个时间是A.Leave触发之前  触发的


在线等 谢谢了
[解决办法]
动态的去 +=或-= 绑定leave事件,甚至可以在鼠标enter B时 -= A的leave事件,A的enter时,绑定A的leave事件
[解决办法]

引用:
现在有2个Control A(TextBox) B(Button)  A上注册有Leave事件 并在事件里写上弹MessageBox。  
private void TextBox_Leave(object sender, EventArgs e)
{
MessageBox.Show("Test");
}

现在要做的是我想用鼠标点击控件B,这时候焦点肯定是转移到B上了,这时候必然触发A上的Leave事件。

问题:
B上有没有一个事件是发生在A.Leave之前?换而言之就是有没有办法在我点击B的时候捕捉到B上的一个事件而且这个时间是A.Leave触发之前  触发的


在线等 谢谢了

LZ在A的leave事件第一行上加几句
 if (btB.Focused)
            {
                return;
            }
这样以下的代码就不会执行了

热点排行