在Silverlight 3中下载文件

时间:2010-09-08 04:30:02

标签: c# silverlight-3.0

我有一个字符串数据网格,它是远程Web服务器上文件的名称。

所以我的问题是,当用户点击datagrid中的一行时,Web浏览器应该下载相应的文件。您通常浏览网站并单击文件链接,然后在浏览器中打开并开始下载。

在MSDN上查找示例代码,但我找不到任何可以执行此操作的内容。

编辑:也许我需要澄清一下。我不想将文件下载到Silverlight应用程序中。我希望用户将文件下载到他们选择的本地机器上。

2 个答案:

答案 0 :(得分:0)

你可以尝试这些方面的东西

WebClient webClient = new WebClient(); webClient.DownloadProgressChanged + = new DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged); webClient.OpenReadCompleted + = new OpenReadCompletedEventHandler(webClient_OpenReadCompleted); webClient.OpenReadAsync(new Uri(“....”,UriKind.Relative));

有关详细信息,请参阅this

答案 1 :(得分:0)

这就是诀窍。

只需要确保浏览器中没有禁用弹出窗口,但这对我来说没问题:

Uri downloadLink = new Uri("http://www.google.com/intl/en_com/images/srpr/logo1w.png", UriKind.Absolute);
// try to download the file via browser
System.Windows.Browser.HtmlPage.Window.Navigate(downloadLink, "_blank", "height=300,width=600,top=100,left=100");