2009-12-09 57 views
1

让我们从最终目标开始 -
我需要能够将文件粘贴到本地文件系统,即从Web响应流中获取。在剪贴板中添加流

我认为最好的行动方式是以某种方式在剪贴板中放入一些东西,当粘贴操作发生时会通知我,所以我可以运行异步请求,等待响应并发送流文件系统。是否有可能做这样的事情?
如果没有,也许我可以发送复制操作的请求,获取流(甚至可能完全复制到一个MemoryStream,所以我可以关闭响应),并以某种方式将其放入剪贴板,以便粘贴将只是“泄漏“这一切?

这里的任何人对我有任何建议或指针?

+0

可能重复探险家C#](http://stackoverflow.com/questions/1845654/how-to-use-filegroupdescriptor-to-drag-file-to-explorer-c-sharp) – Deanna 2014-07-30 11:17:38

回答

1

我发现this问题,链接到一个CodeProject上文章解释我应该做什么。试图找出我自己目前。

1

也许你可以将文件保存到临时文件夹(Path.GetTempPath()),然后使用常规的Windows拷贝/粘贴机制(Clipboard.SetFileDropList

0

这个例子可以节省一格的临时文件的内容,并加载所有行到剪贴板上,这样他们可以粘贴到Excel:

String filename = Path.Combine(Path.GetTempPath(), "grid.csv"); 
using (Stream stream = new MemoryStream()) 
{ 
    this.Grid.Export(stream,new GridViewExportOptions() {Format = ExportFormat.Csv, ShowColumnHeaders = true}); 
    stream.Position = 0; 
    using (StreamReader r = new StreamReader(stream)) 
    { 
     Clipboard.SetData(DataFormats.CommaSeparatedValue, r.ReadToEnd()); 
    } 
} 
的[如何使用filegroupdescriptor拖动文件到