WPF Web浏览器显示 PdfDocument - 安全警告下载文件而不是打开它

问题描述 投票:0回答:1

希望有人可以帮助我,我正在开发 WPF 应用程序,需要在预览显示屏上显示以前创建的 pdf 文档,因为我正在使用 WebBrowser 控件。该文档已成功保存在我电脑上的公共文件夹中,但是当尝试导航到该 pdf 文档或事件设置网络浏览器的源时,浏览器只想下载该文件而不是显示它,有人可以解释如何停用这个?

Download screenshot

我尝试创建一个流并显示它,我还尝试将pdf转换为base64字符串,但它太长而无法显示。

browser.Navigate("file:///" + @"C:\Users\Public\Documents\TempFiles\document.pdf");
c# wpf pdf webbrowser-control pdfsharp
1个回答
0
投票

您必须正确设置

ContentType
。浏览器根据
ContentType
决定是直接显示文件还是下载文件。

不同的服务器框架使用不同的方式来指定

ContentType
。下面是一个例子。

  // Send PDF to browser
  MemoryStream stream = new MemoryStream();
  document.Save(stream, false);
  Response.Clear();
  Response.ContentType = "application/pdf";
  Response.AddHeader("content-length", stream.Length.ToString());
  Response.BinaryWrite(stream.ToArray());
  Response.Flush();
  stream.Close();
  Response.End();
© www.soinside.com 2019 - 2024. All rights reserved.