c# - 在 OpenFileDialog 中使用 DialogResult.OK 时出错

标签 c# .net wpf openfiledialog

我从其他项目之一复制了 OpenFileDialog,但它不适用于新项目。

 OpenFileDialog open = new OpenFileDialog();
        open.Filter = "Binary|*.bin";
        open.RestoreDirectory = true;
        open.Multiselect = false;
        try
        {
            if (open.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
               //some code
            }
        }...

该错误表明我缺少引用。 所以我尝试配置引用,但是当我单击 System.Windows.Forms 的复选框时,它说我无法使用它,因为 ActiveX-Library 是从 .NET-Assembly 导入的,并且无法添加它。在我之前的项目中,我添加了引用,一切正常。如何添加对 .NET-Assembly 的引用?

奖励:为什么会发生这种情况?是否有任何理由应在 VisualStudio 中阻止添加引用?

-编辑-它是一个 WPF 应用程序,我正在使用带有 .NET Framework 4.5.2 的 VisualStudio 2017

最佳答案

尝试将 winform 引用替换为 false。

改变这个

if (open.ShowDialog() == System.Windows.Forms.DialogResult.OK)

到此

if (open.ShowDialog() == true)

关于c# - 在 OpenFileDialog 中使用 DialogResult.OK 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45591127/

相关文章:

c# - 为什么这个双击检测代码不可靠?

c# - AutomationElement 获取真实类型

wpf - Microsoft.Build.BuildEngine.Engine 在构建 WPF 应用程序时抛出错误

c# - .net 框架中的集合 <T> 类位置

c# - ALL 或 null 与枚举?

c# - 尝试连接到 SQL Azure 数据库时出现异常

c# - 编译后dll命名空间被排除

c# - 从 DataGridView 获取数据表

c# - 根据 FileSystemWatcher 更改通知更改 ObservableCollection

javascript - 如何获取 Kendo Multi Select 的选定值?