日期:2014-05-17  浏览次数:21458 次

C# winform 自定义控件 鼠标事件
小弟自定义了一个控件为Panel_1在该控件中添加了一个PictureBox_1

将该自定义控件添加到winform页面中,调用MouseLeave,使得离开该自定义控件Panel_1时自动将该控件隐藏掉。

但问题来了:当鼠标移到该自定义控件Panel_1的PictureBox_1时,该MouseLeave事件居然触发了。。。。

PictureBox_1不是属于该Panel的吗?
为何这个移到该Panel中的控件触发了leave事件呢?
该如何解决呢?

求各位大神赐教啊

------解决方案--------------------
你移动到pic上了,当然就不在panel上了,你可以通过判断鼠标是否还在panel的范围内做条件
------解决方案--------------------
引用:
Quote: 引用:

你移动到pic上了,当然就不在panel上了,你可以通过判断鼠标是否还在panel的范围内做条件

你的方法是可行的,
但依然有疑问:这个pic不是在panel上吗?
既然在panel上的话,那鼠标移到pic上不也还在panel上?


MouseLeave事件是以控件为判定条件的,pic和panel虽然有子父级关系,但是不是同一控件
------解决方案--------------------
PictureBox_1.Enable = false