相关文章推荐
卖萌的皮带  ·  js ...·  1 年前    · 
追风的手套  ·  PromQL ...·  1 年前    · 
呐喊的生姜  ·  SQL ...·  1 年前    · 

开发中有时会想实现"选择某个文件夹"的效果:
在这里插入图片描述

在WPF中,使用Microsoft.Win32.OpenFileDialog只能选择文件,FolderBrowserDialog只能用树型的方式选择文件夹,很不好用.

终于找到一个办法,使用 WindowsAPICodePack-Shell
安装方法:
nuget程序包 选择安装
在这里插入图片描述

在VS里打开Package Manager Console后输入Install-Package WindowsAPICodePack-Shell获取包后

就可以像这样打开选择文件夹Dialog了:

 var dialog = new CommonOpenFileDialog();
            dialog.Title = "请选择您要导出的文件夹";
            dialog.IsFolderPicker = true;
            if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
                string path = dialog.FileName;

path就是你需要的文件夹地址

WPF的提供了选择文件对话框但并没有提供选择文件夹对话框。解决方法1:a、添加System.Windows.Forms的引用b、引用命名空间,为避免类名冲突可以给命名空间别名c、使用System.Windows.Forms命名空间下的FolderBrowserDialog类WinForm.FolderBrowserDialog dialog = new WinForm.FolderBrowser... 如果你直接调用它而不传递窗口句柄,它将默认使用当前激活的窗口作为它的所有者。如果你在.NET Core或.NET 5/6/7+应用程序遇到兼容性问题,考虑使用WPF自带的。在Visual Studio,可以通过解决方案资源管理器的“引用”部分来添加。在.NET Core或.NET 5/6/7+的WPF应用程序,可能还需要添加对。是Windows Forms的一部分,不是WPF的一部分。来选择文件夹,你需要添加对WinForms的引用,因为。在你的WPF窗口代码,你可以创建和使用。 在 WPF 打开文件夹对话框可以使用 System.Windows.Forms 类库FolderBrowserDialog 类。可以使用该类的 ShowDialog() 方法来显示文件夹选择对话框,并使用 SelectedPath 属性获取用户选择文件夹路径。 使用步骤: 1.在项目添加引用 System.Windows.Forms 2.在代码实例化一个 FolderBrowser... Winform控件是Windows Forms的用户界面元素,它们可以用于创建Windows应用程序的各种视觉和交互组件,例如按钮、标签、文本框、下拉列表框、复选框、单选框、进度条等。开发人员可以使用Winform控件来构建用户界面并响应用户的操作行为,从而创建功能强大的桌面应用程序。Description属性用于设置对话框显示的消息。通过设置该属性,可以在对话框显示一条自定义的消息,以便提醒用户选择文件夹的用途或者限制条件。 在WPF,使用Microsoft.Win32.OpenFileDialog只能选择文件,FolderBrowserDialog只能用树型的方式选择文件夹,很不好用. 终于找到一个办法,使用Windows API Code Pack 在VS里打开Package Manager Console后输入Install-Package Windows... WPF FolderBrowserDialog控件的使用 FolderBrowserDialog是Winform的控件,可以用于选择指定的文件夹路径; 一、首先需在项目手动添加引用:System.Windows.Forms; 二、在项目添加类COldWindow.cs; public class OldWindow : System.Windows.Forms.IWin32Window IntPtr _handle; public OldWindow(Int 在WPF实现文件的打开和选择,可以通过使用类来完成。这是一个通用的对话框组件,允许用户在本地文件系统浏览和选择文件。这个组件属于WPF的一部分,因此不需要引用额外的库。以下是一个如何使用。 如何在WPF使用更现代化的 UWP FolderPicker?为何出现System.Runtime.InteropServices.COMException:“Invalid window handle. (0x80070578)异常?本文将为你解决。 一个上位机软件在处理数据的时候,除了配置文件、数据文件之外,一般还需要使用选择对话框进行文件和目录的选取。如果不这样做,那么就需要先关闭软件,修改配置文件后再重新打开,这样就不是很方便。不过c# wpf本身已经提供了文件对话框、目录对话框的方案,大家只要学会使用就可以了。 虽然通用对话框很有用,并且应尽可能使用,但它们不支持域特定对话框的要求。在这些情况下,就需要创建自己的对话框。如我们所见,对话框是具有特殊行为的窗口。Window 实现了这些行为,你可以使用窗口来创建自定义模式和非模式对话框。自行创建对话框时,需要考虑许多设计注意事项。尽管应用程序窗口和对话框有相似之处,例如共享相同的基类,但对话框用于特定目的。当你需要提示用户提供某种信息或响应时,通常需要对话框。通常,应用程序会在显示对话框(模式)时暂停,从而限制对应用程序其余部分的访问。 WPF文件选择1.选择文件的后台代码:2.选择文件夹 1.选择文件的后台代码: 在wpf框架使用文件框选择文件比较容易实现,可以直接使用Microsoft.Win32.OpenFIleDialog类,后台代码如下: // 实例化一个文件选择对象 Microsoft.Win32.OpenFileDialog dialog = new Microsoft.Win32.OpenFileDialog(); dialog.DefaultExt = ".png"; // 设置默认类型 // 设置可选格式 dialo