我目前正在开发一个C#WPF项目。我在System.Windows.Forms命名空间中有一个FolderBrowserDialog。我正在使用名为dlg的变量创建对话框的实例,并使用以下代码行将所选路径分配给“我的文档”:
dlg.SelectedPath = Environment.SpecialFolder.MyDocuments.ToString();
然而,这似乎并没有多大区别。然后我尝试使用根路径做同样的事情,但这似乎使它将根目录设置为我的文档,你不能离开我的文档,即C:\或桌面。
如何设置默认路径但仍允许访问驱动器的所有可用区域,例如默认路径为“我的文档”,但允许用户在“我的文档”之外转到C:\或桌面。
感谢您提供的任何帮助。
答案 0 :(得分:4)
您正在为SelectedPath
分配错误的值。通过设置Environment.SpecialFolder.MyDocuments.ToString()
,您将字符串“MyDocuments”(或“Personal”,因为它在Environment.SpecialFolder
枚举中具有相同的值)设置为SelectedPath
。无法找到它,因为它不是有效路径,因此不会选择任何内容。
您需要使用Environment.GetFolderPath()
查找特殊文件夹的路径:
dlg.SelectedPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
这将设置特殊文件夹的路径,文件夹浏览对话框在打开时将选择该路径。