文件系统条目浏览器对话框c#

时间:2012-06-10 21:57:09

标签: c# .net winforms forms dialog

我使用的是Windows.Forms应用程序,我可以使用OpenFileDialogFolderBrowserDialog从我的用户那里获取文件或目录。但我需要在一个独特的对话框中获得两者。我尝试将OpenFileDialog.multselect = true一起使用并选择文件和文件夹,但在代码中,当我访问OpenFileDialog.FileNames时,此属性仅返回文件名,而不返回所选目录。

System.IO.Directory调用GetFileSystemEntries中存在一个我想要的静态方法。但我需要一个能够做到这一点的对话。

任何人都可以帮助我?

4 个答案:

答案 0 :(得分:0)

尝试:

string baseFolder = System.IO.Directory.GetParent(strToFile).ToString();

这将为您提供文件的文件夹名称。

答案 1 :(得分:0)

或使用FileInfo!

FileInfo fi = new FileInfo(strToFile);
string fileFolder = fi.DirectoryName;

答案 2 :(得分:0)

private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                string[] files = openFileDialog1.FileNames;

                if (files != null && files.Length > 0)
                {
                    // returns the root directory
                    string folder = System.IO.Path.GetDirectoryName(files[0]);

                    // Obtain the file system entries in the directory path.
                    string[] directoryEntries =
                        System.IO.Directory.GetFileSystemEntries(folder); 
                }
            }

        }

答案 3 :(得分:0)

  

无法获取单个文件夹和文件   对话框()。

根据microsoft关于c#的文档,您必须使用不同的对话框来选择文件夹和文件