加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – ShowDialog()没有得到DialogResult

发布时间:2020-12-15 21:32:43 所属栏目:百科 来源:网络整理
导读:这很奇怪.我从来没有在C#中使用ShowDialog这个问题.由于某些奇怪的原因,当为64位操作系统开发的代码试图显示打印机对话框时,它从不这样做,而DialogResult是“无”.我已经通过逐步走过每一行调试它,看不到任何线索.我检查了命名空间并验证我设置了正确的引用
这很奇怪.我从来没有在C#中使用ShowDialog这个问题.由于某些奇怪的原因,当为64位操作系统开发的代码试图显示打印机对话框时,它从不这样做,而DialogResult是“无”.我已经通过逐步走过每一行调试它,看不到任何线索.我检查了命名空间并验证我设置了正确的引用:

using System.IO;
using System.Windows.Forms;

这是代码:

private void printToolStripMenuItem_Click(object sender,EventArgs e)
    {
        printDoc.DefaultPageSettings = pgSettings;
        PrintDialog dlg = new PrintDialog();
        dlg.Document = printDoc;
        if (dlg.ShowDialog() == DialogResult.OK)
        {
            printDoc.Print();
        }
    }

完全相同的代码,在32位机器的几乎完全相同的版本中,没有问题.显示对话框,用户选择打印机,按OK,任务完成.

在64位版本中,ShowDialog()不适用于PrintDialog(),但适用于PrintPreviewDialog()!

任何想法将不胜感激!

解决方法

我认为这已在其他地方得到解答:

http://social.msdn.microsoft.com/Forums/en-US/netfx64bit/thread/a707d202-1a8b-43b1-9fff-08aa7ceb200a/

Try setting USEExDialog = True – It should work.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读