鼠标移动事件的问题

时间:2010-04-12 00:01:36

标签: c# wpf winforms wpf-controls

我有一个WPF control1(有一个移动控件),它通过windows窗体上的elementhost托管。我的目标是捕获elementhost的鼠标移动事件。

我从以下链接中发现当鼠标静止时,当鼠标移动时,MouseMove会触发。

http://social.msdn.microsoft.com/Forums/en/wpf/thread/56e7b331-ac6f-4d62-a83b-c09009b79fa0

我正在为elementhost获取虚假鼠标移动事件。为了解决这个问题,我在elementhost顶部添加了一个按钮,并将其Visible属性设置为Hidden。我仍然得到假的鼠标移动事件..如何解决这个问题?有没有解决方法?

感谢您的帮助......

2 个答案:

答案 0 :(得分:3)

在您的mousemove事件中,记下e.X和e.Y的值,让您的鼠标保持静止。如果它们是相同的,问题就解决了。

答案 1 :(得分:0)

我刚刚在没有ElementHost的WPF应用程序中注意到这个问题 - mousemove持续不断地为固定鼠标发射!我现在在发布者和订阅者之间放置一个中间类来过滤事件,如果重复X& Y点出现(加上来自MouseEventArgs的订户分离,因此我可以对订阅者进行单元测试)