【问题标题】:Suppress about:blank in Print Output of WinForms WebBrowser禁止在 WinForms WebBrowser 的打印输出中出现 about:blank
【发布时间】:2012-02-09 17:15:00
【问题描述】:

我正在更新一个 WinForms 应用程序,该应用程序使用 System.Windows.Forms.WebBrowser 来输出程序生成的一些 HTML 内容。该解决方案工作正常,除了about:blank 打印在每页的页脚中。

是否可以抑制该输出?或者,是否有从没有该问题的 WinForms 打印 HTML 的直接替代方法?

客户不想假设存在任何第三方软件,例如 Excel 甚至 PDF 阅读器。

【问题讨论】:

    标签: c# .net winforms printing webbrowser-control


    【解决方案1】:
    public void ClearBrowserPrintHeaderAndFooter()
    {
        string path = "Software\\\\Microsoft\\\\Internet Explorer\\\\PageSetup";
        Microsoft.Win32.RegistryKey key = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(path, true);
        if (key == null) {
            key = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(path, true);
        }
        key.SetValue("header", "");
        key.SetValue("footer", "");
        key.Close();
    }
    

    很傻,但就是这样。

    【讨论】:

    • 这在 Windows 7 上对我有用,但是最好在打印之前通过 key.GetValue 保存注册表值,并在打印完成后恢复原始值。否则,该设置将在该用户的计算机上保持清除,以便后续 IE 打印。
    猜你喜欢
    • 1970-01-01
    • 2014-07-30
    • 1970-01-01
    • 1970-01-01
    • 2012-11-20
    • 2019-03-20
    • 1970-01-01
    • 2014-08-09
    • 1970-01-01
    相关资源
    最近更新 更多