Wpf PrintDialog.ShowDialog()不返回null
WPF中PrintDialog类的ShowDialog方法声明为返回可为null的bool(即bool?),这与文档详细信息一致: “如果用户单击“打印”,则为true;如果用户单击“取消”,则为false; 或者,如果用户未单击“打印”或“取消”而关闭对话框,则为空 但是,在下面的代码中,无论我如何关闭对话框,(我尝试了X和Alt-F4),我都无法使其返回null。除非我按下打印按钮,否则它总是错误的。这是我的测试代码:Wpf PrintDialog.ShowDialog()不返回null,wpf,nullable,printdialog,Wpf,Nullable,Printdialog,WPF中PrintDialog类的ShowDialog方法声明为返回可为null的bool(即bool?),这与文档详细信息一致: “如果用户单击“打印”,则为true;如果用户单击“取消”,则为false; 或者,如果用户未单击“打印”或“取消”而关闭对话框,则为空 但是,在下面的代码中,无论我如何关闭对话框,(我尝试了X和Alt-F4),我都无法使其返回null。除非我按下打印按钮,否则它总是错误的。这是我的测试代码: PrintDialog pd = new PrintDialog();
PrintDialog pd = new PrintDialog();
bool? result;
result = pd.ShowDialog();
你也有同样的行为吗?文档是否有误,或者我是否误解了它,或者测试是否正确?也许这与操作系统有关,我正在运行Windows7企业版
多谢各位
L这会给您带来什么问题?没问题,只是想知道每次处理这一问题时是否需要针对所有3种可能的返回类型进行编码。更多的是一个教育性的问题,检查我的理解是否正确。我明白你的意思,但我只想做一个if(pd.ShowDialog()==true){/*do stuff*/};