【发布时间】:2021-12-24 03:53:36
【问题描述】:
我有一个 winforms 应用程序,我想通过 System.Windows.Forms.WebBrowser 控件显示打印预览。
这是我的助手类:
using System;
using System.Windows.Forms;
namespace Hobbysta.App.Controls.Print
{
public class PrintingContent
{
private readonly string htmlContent;
public PrintingContent(string htmlContent)
{
this.htmlContent = htmlContent;
}
public void ShowPreview()
{
ExecuteBrowserAction(b => b.ShowPrintPreviewDialog());
}
private void ExecuteBrowserAction(Action<WebBrowser> action)
{
var browser = new WebBrowser();
browser.DocumentCompleted += (_, __) =>
{
action(browser);
browser.Dispose();
};
browser.DocumentText = htmlContent;
}
}
}
我从带有按钮的表单中调用它:
private void button1_Click(object sender, EventArgs e)
{
var result = new PrintingContent("TEST PRINT");
result.ShowPreview();
}
结果,创建了新窗口,我可以在选项卡上看到它,但无论如何都无法显示它。点击缩影没有任何作用。
我在这里错过了什么?
【问题讨论】:
标签: c# winforms webbrowser-control