是否可以将FolderBrowserDialog.RootFolder设置为字符串中的任意路径?

Alm*_*lmo 5 .net c# winforms

我正在努力做到这一点

FolderBrowserDialog dlg = new FolderBrowserDialog();
dlg.RootFolder = "C:\SomeUserSelectedFolder";
Run Code Online (Sandbox Code Playgroud)

但是RootFolder是一个System.Environment.SpecialFolder.

这是否意味着我只能将其设置为MyDocuments或桌面等地方?!?

stu*_*rtd 12

这是正确的:如果赋值的值RootFolder不是其中一个Environment.SpecialFolder值,则会引发InvalidEnumArgumentException.

但您可以设置SelectedPath:

如果在显示对话框之前设置了SelectedPath属性,则只要SelectedPath设置为RootFolder的子文件夹的绝对路径(或更准确地说,指向该文件夹的子文件夹),具有此路径的文件夹将是所选文件夹由RootFolder表示的shell命名空间.