FolderBrowserDialog добавить пользовательское корневое имя - PullRequest
0 голосов
/ 05 июня 2018
FolderBrowserDialog fd = new FolderBrowserDialog();
fd.RootFolder = string.Format("D:\\Project\\folder1\\folder2\\ Results\\{0}", FolderName);

в FolderBrowserDialog корневая папка ожидает тип среды.specialfolder
, но я хочу добавить свою папку в качестве корневой папки.
Я не хочу устанавливать SelectedPath в качестве своего пользовательского пути.
есть ли способ сделать это.
заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 05 июня 2018

Я бросил браузер папок в форме с именем folderBrowserDialog1, и ниже, кажется, работает.Опция специальной папки - это просто опция, позволяющая начать просмотр в «специальной» папке.Например, Windows и т. Д., И он обеспечивает аккуратный механизм для его установки без ввода полного пути.Если вам нужен собственный путь, установите свойство SelectedPath.

folderBrowserDialog1.RootFolder = Environment.SpecialFolder.MyComputer;
//The above is optional. You don't need to set it.

folderBrowserDialog1.SelectedPath = @"C:\"; //Your path here
folderBrowserDialog1.ShowDialog();

Надеюсь, что это поможет

0 голосов
/ 05 июня 2018

Нет способа изменить RootFolder на пользовательскую папку, потому что это используется как запасной вариант, который, я думаю, и происходит в вашем коде..Net знает , что специальные папки существуют, в то время как ваш пользовательский каталог может не существовать.

Похоже, вам нужно удалить здесь пробел ...folder2\\ Results\\... и / или проверить переменную FolderNameпоскольку это создает строку каталога, которая не существует, поэтому в вашем диалоге вместо этого используется RootFolder.

0 голосов
/ 05 июня 2018
  1. По умолчанию RootFolder установлен на рабочий стол
  2. Установите вашу пользовательскую папку как свойство SelectedPath

    fd.SelectedPath = string.Format ("D: \ Project \ folder1 \"folder2 \ Results \ {0} ", имя_папки);

  3. Метод вызова Call-диалога

    fd.ShowDialog ();

Обратите внимание, что порядок этих настроек необходимо сохранить, иначе это приведет к неверному результату.

Более подробно в следующем ответе на вопрос Задать начальное местоположение диалога браузера папок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...