我正在写一个WPF应用程序,在应用程序的控件中支持拖放,也可以在我的桌面文件和应用程序之间拖放。我使用装饰器来改变我的鼠标光标。
控件之间的内部拖放操作没有问题。问题是桌面文件和我的应用程序之间的拖放。
我为我的窗口设置了一个DragEnter和DragLeave处理程序。当我将一个文件拖到我的应用程序中时,DragEnter触发了,但它不仅仅触发了一次,而是在我的应用程序窗口中使用DragLeave交替触发。
我已经实现的是,我可以设法将文件拖到我的应用程序中,并使用所需的装饰器;但如果我一直按住鼠标并将文件拖回桌面,装饰器就卡在角落里了。我不能使用DragLeave清除装饰器,因为当我在应用程序中拖动鼠标时,DragLeave事件会不停地触发。
我希望只有当鼠标光标拖动离开我的应用程序时才触发DragLeave。
有什么解决方法吗?
发布于 2013-10-26 13:24:40
以下是您可以针对此方案执行的一种可能的解决方法。DragDrop - DragEnter/DragLeave Events keep firing
https://stackoverflow.com/questions/4611775
复制相似问题