Змінюй хід війни! Допомагай ЗСУ!

Вопрос по C#

🔴 21:26 Повітряна тривога в Харків.обл.
Статус: Offline
Реєстрація: 26.08.2008
Повідом.: 41
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #1
Вопрос по C#

у класса "диалоговое окно" есть свойство InitialDirectory

если написать openFileDialog1.InitialDirectory = собачка"..\";
диалог. окно открывается не в текущем катологе, а каталогом выше по уровню (ближе к корневому).
Что написать чтоб открывалось окно в текущей деректории (от куда запустилось приложение)?
 
Останнє редагування:
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #2
Попробуй просто точку

Код:
openDlg.InitialDirectory = "."

Или,

Код:
using System.Reflection;
using System.IO;

... 

openDlg.InitialDirectory =  Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);

Со свойством Location, правда, есть одна хитрость. Если по каким-то причинам произошел shadow copying, там будет путь куда-то в глубины Documents and Settings вместо ожидаемого. Тогда, нужно вместо этого использовать свойство CodeBase и перед GetDirectoryName обрезать префикс протокола file:///.
 
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #3
Thanks!
 
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #4
А чем не устраивает использование Application.StartupPath ?
 
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #5
А чем не устраивает ничего не писать в InitialDirectory? Исходно оно равно текущей папке (откуда запускается прога). Всё проще некуда :ги:
 
  • 🔴 21:26 Повітряна тривога в Харків.обл.
  • #6
А чем не устраивает ничего не писать в InitialDirectory? Исходно оно равно текущей папке (откуда запускается прога). Всё проще некуда
Потомучто:

Значением по умолчанию является пустая строка ("").
Как правило, свойство InitialDirectory устанавливается посредством использования одного из следующих ресурсов:

*

Путь, который ранее использовался в программе, скорее всего сохраненный после последней операции с каталогом или файлом.
*

Путь, прочитанный из постоянного источника, например из параметра приложения, Registry или строкового ресурса в приложении.
*

Стандартные системные или пользовательские пути Windows, такие как Program Files, Мои документы, Моя музыка и тому подобное (которые можно получить с помощью метода GetFolderPath)
*

Путь, относящийся к текущему приложению, такой как путь к папке запуска (который можно получить с помощью свойств объекта Application).

А чем не устраивает использование Application.StartupPath
Устраивает тоже, спасибо :)
 
Назад
Зверху Знизу