问题描述
WinForm程序需要实现鼠标拖放并不复杂,在目标控件中设置AllowDrop,实现DragEnter、DragOver、DragDrop等事件即可。但是无法实现像Windows桌面图标拖动的效果,如下图所示仔细看会发现拖动的时候鼠标的下方会出现一个原图标的镜像半透明复制图像,这个效果通过设置DragDropEffects是实现不了的,而且不只是桌面图标,图片拖动也会有类似的效果问题是:这个如何实现?
解决方案
解决方案二:
这个其实是一张快照,鼠标拖的时候这个快照跟着鼠标走,在drag拖动的事件里面,你也可以这么做,如果有类似于mousemove可以跟踪鼠标走位的事件的话。关键是你怎么对向前对象做一个快照,这是一个keypoint。
解决方案三:
截图就行了。。。
解决方案四:
http://blogs.msdn.com/b/adamroot/archive/2008/02/19/shell-style-drag-and-drop-in-net-wpf-and-winforms.aspx
时间: 2024-12-24 06:00:12