问题是:
- 我有一个简单的 C# 表单
- 我有一个简单的 C# 用户控件,其中包含一个图片框和其他按钮。
- 我的表单包含一个用户控件实例。
- 我希望当用户在图片框中执行 mouseEnter 时,鼠标光标会改变,而当用户在图片框中执行 mouseLeave 时,鼠标会恢复正常。
现在发生的事情是根本没有触发事件。我将断点放入 MouseOver、MouseEnter、MouseMove、MouseLeave 等,但没有一个被触发。这是我第一次在 C# 中遇到这个问题。
我认为这与“路由事件”有关,但我想不通。如果有另一种方法可以实现我正在做的事情,这也将被视为一种解决方案。重要的是,最终,用户控件将成为鼠标光标在其“领土”上的主人。
提前致谢!
最佳答案
您使用的是什么事件? UserController.MouseEnter
和 UserController.MouseLeave
事件或 PictureBox.MouseEnter
和 PictureBox.MouseLeave
事件?
您应该使用后者,因为如果鼠标直接通过 PictureBox
进入用户 Controller ,PictureBox
将处理该事件。
关于c# - MouseEnter 和 MouseLeave 事件未在用户控件中引发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6409877/