【发布时间】:2010-11-04 17:04:10
【问题描述】:
它是关于生成报告的 WPF 应用程序。
报告具有简单的结构:byte[] m_Data, string m_Mime。
创建了数据数组,设置了 MIME 类型,现在我需要显示具有与 Web 浏览器中相同功能的对话框 - 打开/保存/取消对话框,根据响应的 MIME 类型在适当的应用程序中打开文件。
【问题讨论】:
标签: wpf mime mime-types
它是关于生成报告的 WPF 应用程序。
报告具有简单的结构:byte[] m_Data, string m_Mime。
创建了数据数组,设置了 MIME 类型,现在我需要显示具有与 Web 浏览器中相同功能的对话框 - 打开/保存/取消对话框,根据响应的 MIME 类型在适当的应用程序中打开文件。
【问题讨论】:
标签: wpf mime mime-types
WPF 没有这样的对话框,因为它不是一个 Web 应用程序,它是一个在本地运行并使用操作系统的本机设施而不是 HTTP 的应用程序。
编写打开/保存/取消对话框本身应该很容易编写,为了实现打开功能,您应该将文件保存到磁盘(可能是 System.IO.Path.GetTempPath 返回的临时目录或到 System.IO.Path.GetTempFileName 返回的文件名)。
确保文件具有正确的扩展名,因为 Windows 使用文件扩展名而不是 mime 类型(因为在编写 Windows 时 mime 类型不存在)。
要打开您刚刚创建的文件,请使用 System.Diagnostic.Process.Start,例如,如果安装了 MyPdfFile.pfd 文件,它将在 Acrobat 阅读器中打开(从当前目录,不要忘记包含完整路径在您的代码中):
System.Diagnostics.Process.Start("MyPdfFile.pdf");
【讨论】: