使用WebBrowser显示对话框

时间:2011-02-15 22:07:44

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

我想显示一个打印机对话框但是当我运行以下代码时,它会在ShowPrinterDialog打开时立即打印。换句话说,它不会等待ShowPrinterDialog在打印前关闭。

WebBrowser browser = new WebBrowser();
browser.DocumentText = "<b>Stack Overflow FTW!</b>";
browser.DocumentCompleted += Browser_DocumentCompleted;

void Browser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
    ((WebBrowser)sender).ShowPrinterDialog();
    ((WebBrowser)sender).Print();
}

有关如何解决此问题的任何想法?

2 个答案:

答案 0 :(得分:5)

只需使用.Print(); - )

删除最后一行

答案 1 :(得分:0)

  • 如果您不使用WebBrowserDocumentCompletedEventArgs,请将其声明为EventArgs
  • 不要再施展一次

即:

void Browser_DocumentCompleted(object sender, EventArgs e)
{
     WebBrowser browser = (WebBrowser)sender;
     browser.ShowPrinterDialog();
     browser.Print();
}