C# winform 自定义控件 鼠标事件

zhezizhang 2013-12-20 09:25:51
小弟自定义了一个控件为Panel_1在该控件中添加了一个PictureBox_1

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

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

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

求各位大神赐教啊
...全文
400 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bdmh 2013-12-20
  • 打赏
  • 举报
回复
你移动到pic上了,当然就不在panel上了,你可以通过判断鼠标是否还在panel的范围内做条件
assky124 2013-12-20
  • 打赏
  • 举报
回复
PictureBox_1.Enable = false
飞小猪 2013-12-20
  • 打赏
  • 举报
回复
引用 2 楼 zhezizhang 的回复:
[quote=引用 1 楼 bdmh 的回复:] 你移动到pic上了,当然就不在panel上了,你可以通过判断鼠标是否还在panel的范围内做条件
你的方法是可行的, 但依然有疑问:这个pic不是在panel上吗? 既然在panel上的话,那鼠标移到pic上不也还在panel上?[/quote] MouseLeave事件是以控件为判定条件的,pic和panel虽然有子父级关系,但是不是同一控件
zhezizhang 2013-12-20
  • 打赏
  • 举报
回复
引用 1 楼 bdmh 的回复:
你移动到pic上了,当然就不在panel上了,你可以通过判断鼠标是否还在panel的范围内做条件
你的方法是可行的, 但依然有疑问:这个pic不是在panel上吗? 既然在panel上的话,那鼠标移到pic上不也还在panel上?

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧