gpt4 book ai didi

c# - 使用 .NET 3.5 选择文件夹

转载 作者:IT王子 更新时间:2023-10-29 04:19:03 30 4
gpt4 key购买 nike

在 C# .NET 3.5 应用程序(WinForms 和 WPF 的混合)中,我想让用户选择一个文件夹以从中导入大量数据。目前,它正在使用 System.Windows.Forms.FolderBrowserDialog 但这有点蹩脚。主要是因为你不能在其中输入路径(所以你需要映射一个网络驱动器,而不是输入一个 UNC 路径)。

我想要更像 System.Windows.Forms.OpenFileDialog 的东西,但用于文件夹而不是文件。

我可以用什么代替? WinForms 或 WPF 解决方案很好,但如果可以避免的话,我不希望 PInvoke 进入 Windows API。

最佳答案

不要自己创建!已经完成了。您可以使用 FolderBrowserDialogEx -内置 FolderBrowserDialog 的可重用派生。这允许您输入路径,甚至是 UNC 路径。您还可以使用它浏览计算机或打印机。就像内置的 FBD 一样工作,但是......更好。

完整的源代码。自由的。 MS-公共(public)许可证。

FolderBrowserDialogEx

使用代码:

var dlg1 = new Ionic.Utils.FolderBrowserDialogEx();
dlg1.Description = "Select a folder to extract to:";
dlg1.ShowNewFolderButton = true;
dlg1.ShowEditBox = true;
//dlg1.NewStyle = false;
dlg1.SelectedPath = txtExtractDirectory.Text;
dlg1.ShowFullPathInEditBox = true;
dlg1.RootFolder = System.Environment.SpecialFolder.MyComputer;

// Show the FolderBrowserDialog.
DialogResult result = dlg1.ShowDialog();
if (result == DialogResult.OK)
{
txtExtractDirectory.Text = dlg1.SelectedPath;
}

关于c# - 使用 .NET 3.5 选择文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45988/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com