当应用程序未在UserInteractive模式下运行时显示模式对话框或表单

时间:2012-06-11 09:19:09

标签: c# asp.net

大家好,我在尝试显示打印预览对话框时我的网站处于实时状态时收到此错误

PrintPreviewDialog ppdlg = new PrintPreviewDialog();

ppdlg.ShowDialog();

如何解决此错误

完成错误

Showing a modal dialog box or form when the application is not running in UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application.

1 个答案:

答案 0 :(得分:0)

在asp.Net中,您不能使用PrintPreviewDialog类,因为它是Windows窗体的一部分。 asp.net代码在服务器端运行。

如果要使用asp.net弹出打印对话框,则必须在客户端进行。

这可以通过结合使用自定义css进行打印和一些javascript来实现。这可以是一个很好的起点:http://www.javascriptkit.com/dhtmltutors/cssmedia.shtml