抑制:WinForms WebBrowser的打印输出中的空白

Eri*_* J. 5 .net c# printing webbrowser-control winforms

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

是否可以抑制输出?或者,是否有一个简单的替代方法来从WinForms打印没有该问题的HTML?

客户不希望假设存在任何第三方软件,如Excel甚至PDF阅读器.

Ste*_*ter 5

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();
}
Run Code Online (Sandbox Code Playgroud)

傻但是这样.

  • 这在 Windows 7 上对我有用,但是在打印之前通过 key.GetValue 保存注册表值是一种很好的做法,并在打印完成后恢复原始值。否则,该用户计算机上的设置将保持清除状态,以便后续 IE 打印。 (2认同)