我需要在Drag& Drop系统中为ListView创建插入标记。 (作为Powerpoint)。我在Componentowl中找到了插入标记,但我需要为ListView中的Drag& Drop创建自己的插入标记。
答案 0 :(得分:1)
以下是理论上应该如何做的事情:
处理可拖动元素的MouseLeftButtonDown
,MouseMove
和MouseLeftButtonUp
事件。按下鼠标按钮时,您需要在元素上capture mouse
以便在拖动时获取MouseMove
个事件,并在释放按钮时获取release the capture
。
在MouseMove
事件处理程序中,您需要找到鼠标下的元素并显示“插入标记”'在Popup
控件或Adorner Layer
中(弹出控件用于在所有内容中显示内容)并更新其位置。
Alternativley,您可以在放置目标元素上使用DragEnter
,DragOver
和DragLeave
事件处理程序,以便在弹出窗口或装饰层中插入标记。
您可以阅读这篇文章: http://blogs.msdn.com/b/jaimer/archive/2007/07/12/drag-drop-in-wpf-explained-end-to-end.aspx
或本文:https://cuteprogramming.wordpress.com/2010/12/19/drag-and-drop-reordering-in-wpf-listview/引用了这篇文章:http://www.codeproject.com/KB/WPF/ListViewDragDropManager.aspx
这是另一个解决方案: https://codeblitz.wordpress.com/2009/06/17/wpf-drag-drop-adorner/