Dodragdrop отключает события MouseMove
-
27-09-2019 - |
Вопрос
После начала операции перетаскивания DRAGDROP.DODRAGDROP (...) Больше не выпускаются события MouseMove. Я даже попробовал
AddHandler(Window.MouseMoveEvent, new MouseEventHandler(myControl_MouseMove), true);
где последний параметр означает, что я даже выбираю для обработки событий. Нет шансов, кажется, что событие MouseMove никогда не уволяется вообще! Любой способ до сих пор получить события MouseMove, используя Drag & Drop? Я хотел бы перетащить контроль, притягивая этот контроль, он должен следовать указатель мыши. Любая идея, как это сделать в этом случае?
Решение
Вам нужно справиться с DragOver
мероприятие.
РЕДАКТИРОВАТЬ: Попробуйте обработать GiveFeedback
мероприятие на контроль, который вы позвонили DoDragDrop
на; Это может сделать то, что вы ищете.
Другие советы
Что такое конструкция dragdrop.dodragdrop? Dodragdrop предназначен для того, чтобы он был вызван в методе Mousedown / MouseMove, а не в DrackDrop. Предполагается, что он начнет обращаться с процедурой, чтобы не реагировать на падение (желаемый эффект падения, который вы просто реализуете непосредственно в DrackDrop). MouseMove никогда не пожали во время перетаскивания, возможно, именно поэтому она не огонь с вами, так как вы установили процедуру. Я думаю, что вы справляетесь с этим неправильным способом, вот один из примеров http://msdn.microsoft.com/en-us/library/aaa984430%28v=vs.71%29.aspx..