在c#wpf中选择FolderBrowserDialog的默认路径

时间:2011-08-17 21:42:32

标签: c# wpf folderbrowserdialog

我目前正在开发一个C#WPF项目。我在System.Windows.Forms命名空间中有一个FolderBrowserDialog。我正在使用名为dlg的变量创建对话框的实例,并使用以下代码行将所选路径分配给“我的文档”:

dlg.SelectedPath = Environment.SpecialFolder.MyDocuments.ToString();

然而,这似乎并没有多大区别。然后我尝试使用根路径做同样的事情,但这似乎使它将根目录设置为我的文档,你不能离开我的文档,即C:\或桌面。

如何设置默认路径但仍允许访问驱动器的所有可用区域,例如默认路径为“我的文档”,但允许用户在“我的文档”之外转到C:\或桌面。

感谢您提供的任何帮助。

1 个答案:

答案 0 :(得分:4)

您正在为SelectedPath分配错误的值。通过设置Environment.SpecialFolder.MyDocuments.ToString(),您将字符串“MyDocuments”(或“Personal”,因为它在Environment.SpecialFolder枚举中具有相同的值)设置为SelectedPath。无法找到它,因为它不是有效路径,因此不会选择任何内容。

您需要使用Environment.GetFolderPath()查找特殊文件夹的路径:

dlg.SelectedPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

这将设置特殊文件夹的路径,文件夹浏览对话框在打开时将选择该路径。