Почему FolderBrowserDialog не разрешает рабочий стол как SelectedPath, когда RootFolder - это MyComputer? - PullRequest
0 голосов
/ 18 октября 2011

Это работает:

FolderBrowserDialog dlg = new FolderBrowserDialog();
dlg.RootFolder = Environment.SpecialFolder.MyComputer;
dlg.SelectedPath = "C:\\Almo\\";
dlg.ShowDialog();

Это не:

FolderBrowserDialog dlg = new FolderBrowserDialog();
dlg.RootFolder = Environment.SpecialFolder.MyComputer;
dlg.SelectedPath = "C:\\Users\\Almo\\Desktop\\";
dlg.ShowDialog();

Первый открывает диалог выбора файла, начиная с C: \ Almo, второй запускается на MyComputer.Есть ли способ сделать эту работу?Проблема заключается в том, что местом сохранения моего приложения по умолчанию является Рабочий стол, и я хочу, чтобы пользователь мог выбрать другое местоположение, и я хочу, чтобы диалоговое окно начиналось там, где находится текущее местоположение.

Ответы [ 3 ]

0 голосов
/ 18 октября 2011

Использование:

dlg.SelectedPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)

это дает вам путь к рабочему столу для пользователя, который запускает код.

0 голосов
/ 02 ноября 2011

Очевидно, что рабочий стол в Win 7 на самом деле не существует по пути

c: \ Users \ username \ Desktop

Система делает вид, что делает это в командной строке и в Windowsисследователь.Но поскольку его там нет, часть SelectedPath, для которой требуется, чтобы его путь находился под RootFolder, запрещает указывать путь таким образом.

0 голосов
/ 18 октября 2011

Попробуйте:

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