.NET中是否有一个OpenFileOrFolderDialog对象?

时间:2020-03-06 14:25:02  来源:igfitidea点击:

是否可以使用" OpenFileDialog"类选择文件或者文件夹?它似乎仅允许选择文件,如果我们选择一个文件夹然后选择打开,它将导航到该文件夹​​。

如果不能使用" OpenFileDialog",是否应该使用另一个对象?

编辑:方案是,我有一个可以上载一个...许多文件或者文件夹的工具。我需要能够提供一个对话框,例如" OpenFileDialog",该对话框允许用户选择文件,文件夹或者它们的组合。我知道FolderBrowseDialog,在这种情况下,这不是答案。

解决方案

根据我在.NET中的经验,对于否定和简短的回答,我不得不说不,对不起,但我真的不认为有

如果有时间,可以使用System.Windows.Forms.TreeView类轻松地创建自己的类。每个节点都可以有一个复选框,因此,如果填充树视图(展开),则可以让用户选择他要上载的文件/目录。

这应该使我们开始使用目录填充树视图,在树视图中添加文件的工作也不会那么困难:

http://www.java2s.com/Tutorial/VB/0280__GUI-Applications/FileTreeview.htm

否:OpenFileDialog仅用于打开文件。无论如何,都可以使用FolderFrowserDialog。

[编辑]回答太快:发问者随后进行了编辑。

这是我一直在寻找的解决方案,本文提供了代码并描述了如何创建一个满足我需要的对话框。

CodeProject:IShellBrowser的完整实现

是的,我们可以使用OpenFileDialog选择一个文件夹。这是CodeProject中的一篇文章,演示了一种实现方法(http://www.codeproject.com/KB/dialog/OpenFileOrFolderDialog.aspx)。