DoDragDrop отключает события MouseMove
после запуска операции перетаскивания с помощью DragDrop.DoDragDrop(...) больше не запускаются события MouseMove. Я даже пытался
AddHandler(Window.MouseMoveEvent, new MouseEventHandler(myControl_MouseMove), true);
где последний параметр означает, что я даже выбираю обработанные события. Нет шансов, кажется, что событие MouseMove никогда не запускается вообще! Любой способ получить события MouseMove при использовании Drag & Drop? Я хотел бы перетащить элемент управления, при перетаскивании этого элемента управления он должен следовать указателю мыши. Любая идея, как это сделать в этой кейс?
2 ответов
вам нужно справиться с DragOver
событие.
редактировать: попробуйте обработать GiveFeedback
событие на панели управления, которую вы вызвали DoDragDrop
on; это может сделать то, что вы ищете.
Что такое DragDrop.DoDragDrop строительства? DoDragDrop предназначен для вызова в mousedown / MouseMove метод действительно, а не в DragDrop. Предполагается начать обработку процедуры, а не реагировать на падение (желаемый эффект падения вы просто реализуете непосредственно в DragDrop). MouseMove никогда не стреляет, уже перетаскивая, возможно, поэтому он также не стреляет с вами, так как вы устанавливаете процедуру. Я думаю, что вы справляетесь с этим неправильно, вот один из примеров http://msdn.microsoft.com/en-us/library/aa984430%28v=vs.71%29.aspx.