gpt4 book ai didi

winforms - 通过WebBrowser控件下载文件

转载 作者:行者123 更新时间:2023-12-02 16:49:01 24 4
gpt4 key购买 nike

我的表单上有一个 WebBrowser 控件,但大多数情况下它对用户来说是隐藏的。它用于处理一系列登录和其他任务。我必须使用这个控件,因为有大量的 Javascript 来处理登录。 (即,我不能只切换到 WebClient 对象。)

经过一番折腾后,我们最终想要下载一个 PDF 文件。但该文件不是下载,而是显示在 webBrowser 控件中,用户看不到。

如何下​​载 PDF,而不是将其加载到浏览器控件中?

最佳答案

将 SaveFileDialog 控件添加到表单中,然后在 Web 浏览器的导航事件中添加以下代码:

private void webBrowser1_Navigating(object sender, WebBrowserNavigatingEventArgs e)
{
if (e.Url.Segments[e.Url.Segments.Length - 1].EndsWith(".pdf"))
{
e.Cancel = true;
string filepath = null;

saveFileDialog1.FileName = e.Url.Segments[e.Url.Segments.Length - 1];
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
filepath = saveFileDialog1.FileName;
WebClient client = new WebClient();
client.DownloadFileCompleted += new AsyncCompletedEventHandler(client_DownloadFileCompleted);
client.DownloadFileAsync(e.Url, filepath);
}
}
}

//回调函数

void client_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)
{
MessageBox.Show("File downloaded");
}

来源:http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/d338a2c8-96df-4cb0-b8be-c5fbdd7c9202

关于winforms - 通过WebBrowser控件下载文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15419632/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com