首先,可以使用System.Windows.Forms.FolderBrowserDialog类来实现此功能,但是它不支持显示外部设备。另一种方法是使用Windows
API
Code
Pa
ck
库,这个库支持在WPF
应用
程序中显示文件浏览器对话框,并且可以浏览外部设备。以下是实现此功能的代码示例:
首先需要引用Windows
API
Code
Pack和WindowsAPI
Code
Pa
ck
.Shell这两个库。
在WPF窗口中添加以下命名空间:
using
Microsoft
.WindowsAPI
Code
Pa
ck
.Dialogs;
在按钮点击事件中添加以下代码:
CommonOpenFileDialog dialog = new CommonOpenFileDialog();
dialog.IsFolderPi
ck
er = true; //设置为文件夹选择器
dialog.AllowNonFileSystemItems = true; //允许非文件系统项(例如外部设备)显示
dialog.EnsurePathExists = true; //确保文件夹路径存在
if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
string folderPath = dialog.FileName;
//此处可以对选择的文件夹路径进行处理
运行程序并单击按钮,将显示一个支持浏览外部设备的WPF文件夹浏览对话框。
注意:在使用Windows
API
Code
Pa
ck
库时,需要将
应用
程序的目标框架设置为.NET Framework 4以上
版
本。