14

通过 DragDrop.DoDragDrop(...) 开始拖放操作后,不再触发 MouseMove 事件。我什至试过

AddHandler(Window.MouseMoveEvent, new MouseEventHandler(myControl_MouseMove), true); 

最后一个参数意味着我什至选择处理事件。没有机会,似乎 MouseMove 事件根本没有被触发!使用拖放时仍有什么方法可以获取 MouseMove 事件?我想拖放一个控件,在拖动这个控件时它应该跟随鼠标指针。知道在这种情况下如何做到这一点吗?

4

2 回答 2

9

您需要处理DragOver事件

编辑:尝试处理您调用的控件上的GiveFeedback事件DoDragDrop;这可能会做你正在寻找的东西。

于 2010-04-19T02:35:53.723 回答
0

什么是 DragDrop.DoDragDrop 构造?DoDragDrop 确实打算在 MouseDown/MouseMove 方法中调用,而不是在 DragDrop 中调用。它应该开始处理该过程,而不是对放置做出反应(您只需在 DragDrop 中直接实现的放置的预期效果)。MouseMove 在拖动时从不触发,也许这就是为什么它不会随您触发,因为您设置了程序。我认为你处理这种错误的方式,这里是一个例子http://msdn.microsoft.com/en-us/library/aa984430%28v=vs.71%29.aspx

于 2014-12-19T22:12:41.763 回答