4

这是问题所在:

  • 我有一个简单的 c# 表单
  • 我有一个简单的 c# 用户控件,其中包含一个图片框和其他按钮。
  • 我的表单包含用户控件的一个实例。
  • 我希望当用户在图片框中执行 mouseEnter 时,鼠标光标会发生变化,而当用户对图片框执行 mouseLeave 时,鼠标会恢复正常。

现在发生的是事件根本没有被触发。我在 MouseOver、MouseEnter、MouseMove、MouseLeave 等中设置了断点,但没有一个被触发。这是我第一次在 C# 中遇到这个问题。

我认为这与“路由事件”有关,但我无法弄清楚。如果有另一种方法来实现我正在做的事情,这也将被视为一种解决方案。重要的是,最终,用户控件将成为鼠标光标在其“领土”上的主人。

提前致谢!

4

2 回答 2

2

你正在使用什么事件?和事件还是UserController.MouseEnter和事件?UserController.MouseLeavePictureBox.MouseEnterPictureBox.MouseLeave

如果PictureBox鼠标直接通过PictureBox.

于 2011-06-20T10:41:20.030 回答
1

正如 InBetween 所写,PictureBox.MouseXXX应该被解雇。你可以将它们困在你的UserControl.

如果您希望代表 触发事件UserControl,只需禁用PictureBox. 请注意,该事件会针对 UserContrl 上的任何鼠标位置触发,而不仅仅是 PictureBox。

于 2011-06-20T10:46:48.557 回答