我的目标是能够将项目从ListView拖动到资源管理器。我试图实现这一点的方式有些不同。通过搜索谷歌和这个网站,我找不到任何可以帮助我或与我正在尝试做的事情密切相关的事情。我几乎无法理解一些例子,因为我对这些拖放操作不够了解。
具体来说,我正在尝试拖动项目的控件是来自TreeListView
库的ObjectListView
。控件填充有表示类似存档的压缩文件内的结构的节点。条目被解析为表示文件和目录的两个不同对象。这两个模型都继承了一个接口。在正常提取这些文件时,我使用Form
来实例化一组节点,并将它们作为参数提取到目标路径。然后它负责提取。这样我就可以显示每个文件的整体和单一进度。
订阅ItemDrag
活动,我知道我需要致电DoDragDrop
。执行此操作时,我需要能够在删除(当用户释放鼠标时)到Explorer
之后实例化提取表单,并且还能够检索拖动项目的路径。
出于某种原因,这似乎比它应该复杂得多。任何形式的建议或建议都会非常有帮助。
答案 0 :(得分:0)
我不确定资源管理器在拖动对象中期望的格式,但此过程可能适合您。
希望这有帮助。
编辑(经过一些研究):
我相信如果你使用
new DataObject(DataFormats.FileDrop, files)
其中files是要复制的文件名的字符串[](放在temp目录中的文件名),你需要有正确的DataObject来实现。
Haven还没有机会编写原型进行测试。祝你好运!