.Net Core WPF 中使用OpenFileDialog窗体

第一种方法:使用Microsoft.Win32.OpenFileDialog()

.NET 5中,根据官方文档,OpenFileDialog属于通用型窗体,可以直接调用Microsoft.Win32.OpenFileDialog()方法打开对话框,原文如下链接:

https://docs.microsoft.com/zh-cn/dotnet/desktop/wpf/windows/how-to-open-common-system-dialog-box?view=netdesktop-5.0#open-file-dialog-box

第二种方法:使用.Net Framework中的类:

1. 右击项目的“依赖项”,选择添加引用;

2. 点击“浏览”,在弹出的文件选择框中,找到system.windows.forms.dll文件。

这里需要注意:.NET的安装位置,根据操作系统和其本身的版本的不同而不同。我这是windows 10 64位的企业版,安装的vs2019最新版。因此system.windows.forms.dll文件位于:C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2。各位读者应该找自己机器上安装的位置。

点击“添加”,然后在图一中,选中System.windows.Forms.dll,并点击“确定”。至此,你的项目引用中就已经添加了这个dll文件的应用。

3. 在代码也,加入system.windows.forms命名空间。

这个地方的做法,就是普通的C#语言,在文件的头部,添加一条using 语句以导入命名空间:

      using System.Windows.Forms;

第四,在你需要的地方,使用OpenFileDialog类:

        // 浏览文件
        private void Btn_Browse(object sender, RoutedEventArgs e)
        {
            OpenFileDialog fileDialog = new OpenFileDialog();
            fileDialog.Filter = "所有文件.*|*.*";
            fileDialog.Multiselect = true;
            if( fileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                string[] filenames = fileDialog.FileNames;
                foreach(string str in fileDialog.FileNames)
                {
                    // 去除重复的
                    if(!lsb_Files.Items.Contains(str))
                    {
                        lsb_Files.Items.Add(str);
                    }
                }
            }
        }

本文为个人原创,自己一点点理解,如有错误,烦请指点。

  • 0
    点赞
  • 1
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

raynadofan

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值