在拖动中嵌入(新)文件信息的最简单方法是什么?

时间:2010-07-10 15:02:40

标签: c# .net file drag-and-drop

我希望用户能够将我的程序中的元素拖到桌面上以从中创建文件。将此信息嵌入DataObject的最简单方法是什么,以便资源管理器接受drop并创建相应的文件?

我在拖放方面的经验是有限的,到目前为止,我能想到的唯一方法是在临时目录中实际创建文件,并通过“FileDrop”的DataFormat将它们的路径附加到DataObject ...但是必须有更好的方法。

1 个答案:

答案 0 :(得分:1)

基本上我理解你要做的是将一个不存在的文件从你的应用程序拖到资源管理器并创建一个物理文件。

好吧,你创建一个临时文件然后在DataObject中设置它的解决方案可能是捷径解决方案。

“正确”的解决方案,无需创建临时磁盘文件,将需要大量的P / Invoke类型互操作来创建自定义IDataObject,它可以从内存而不是物理源文件呈现文件描述符和内容。我没有在.NET中做过这个,但我猜可能会有相当多的工作。