在WPF应用程序中打印之前,我正在尝试显示"打印"对话框。我正在使用来自这个链接的Microsoft示例代码
// Create the print dialog object and set options
PrintDialog pDialog = new PrintDialog();
pDialog.PageRangeSelection = PageRangeSelection.AllPages;
pDialog.UserPageRangeEnabled = true;
// Display the dialog. This returns true if the user presses the Print button.
Nullable<Boolean> print = pDialog.ShowDialog();
它在最后一行崩溃,出现以下异常:
PrintTicket提供程序无法绑定到打印机。Win32错误:打印机名称无效。
我试着寻找一个解决方案,人们建议安装Printer Server功能,并切换到Any CPU构建,但这两种方法在我的情况下都不起作用。
我用微软的代码创建了另一个空白项目,它运行得很好。我开始比较这两个项目的设置,发现它们完全相同。最终,是以下设置导致了问题:
调试->异常-公共语言运行时异常
我在排除其他故障时忘记带了它。一旦我取消选中它,我的程序就不再中断异常,并正确地显示对话框。