Apakah ada cara untuk menyetel direktori awal dari dialog browser folder ke folder non-khusus? Inilah yang saya gunakan saat ini
fdbLocation.RootFolder = Environment.SpecialFolder.Desktop;
tapi saya ingin menggunakan jalur yang saya simpan dalam string seperti inifdbLocation.RootFolder = myFolder;
Ini menyebabkan kesalahan "Tidak dapat mengubah 'string' menjadi 'System.Environment.SpecialFolder'".
RootFolder
keEnvironment.SpecialFolder.Desktop
atau ini mungkin tidak berfungsi.RootFolder
. JikaRootFolder
disetel, hanya folder yang ditentukan dan subfolder yang ada di bawahnya yang akan muncul di kotak dialog.SelectedPath
hanya memilih terlebih dahulu jalur yang diberikan.Setel properti SelectedPath sebelum Anda memanggil ShowDialog ...
Akan memulainya di C: \ Temp
sumber
SelectedPath is set to an absolute path that is a subfolder of RootFolder
)? Perilaku sebagaimana adanya:Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
mengembalikan C: \ Users \ Myusername \ Desktop. Menggunakan kode peniruan (dengan LogonType LOGON32_LOGON_INTERACTIVE) mengembalikan string kosongMSDN - SelectedPath
Re: Desktop vs DesktopDirectory
Desktop
DesktopDirectory:
MSDN - Enum Folder Khusus
MSDN - GetFolderPath
sumber
Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)
mengembalikan C: \ Users \ Myusername \ Desktop. Menggunakan kode peniruan (dengan LogonType LOGON32_LOGON_INTERACTIVE) mengembalikan string kosongUntuk mengatur direktori jalur yang dipilih dan mengambil direktori baru:
sumber
Ditemukan di dotnet-snippets.de
Dengan refleksi ini berfungsi dan mengatur RootFolder yang asli!
sumber
Dalam kasus saya, itu adalah pelarian ganda yang tidak disengaja.
ini bekerja:
ini tidak:
sumber