相关疑难解决方法(0)

如何使用WebBrowser控件以编程方式更改打印机设置?

我终于想出了如何在不提示用户或显示IE窗口的情况下打印转换后的XML,但现在我需要指定一些副本以及可能的其他打印机设置.

有没有办法以编程方式更改WebBrowser控件上的打印机设置?

有问题的代码:

private static void PrintReport(string reportFilename)
{
    WebBrowser browser = new WebBrowser();

    browser.DocumentCompleted += browser_DocumentCompleted;

    browser.Navigate(reportFilename);
}

private static void browser_DocumentCompleted
    (object sender, WebBrowserDocumentCompletedEventArgs e)
{
    WebBrowser browser = sender as WebBrowser;

    if (null == browser)
    {
        return;
    }

    browser.Print();

    browser.Dispose();
}
Run Code Online (Sandbox Code Playgroud)

c# printing webbrowser-control winforms

15
推荐指数
2
解决办法
3万
查看次数

打印从WebBrowser控件在设置默认值后打印到错误的打印机

我在VB.NET WinForms应用程序中有一个WebBrowser控件.我能够在不提示用户的情况下从代码和打印设置默认打印机.但是,还有一个显示PrintDialog的打印按钮.如果首先执行此操作,则将打印页面.然后,如果我尝试以后以编程方式打印(再次将默认打印机设置为其他打印​​机),它将打印到PrintDialog框中选择的最后一台打印机,即使我正在重置默认打印机并看到在Windows中更改默认打印机.

有任何想法吗?

除非ShowPrintDialog首先选择了打印机,否则它可以正常工作.一旦发生这种情况,无论我做什么,似乎总是使用该打印机.

For Each strPrinter In PrinterSettings.InstalledPrinters
            If strPrinter.Contains("My Printer") Then
                wScript.SetDefaultPrinter(strPrinter)
            End If
        Next

        browser.Print()
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net webbrowser-control winforms

5
推荐指数
2
解决办法
7940
查看次数

标签 统计

c# ×2

webbrowser-control ×2

winforms ×2

.net ×1

printing ×1

vb.net ×1