Windows API Code Pack

概要

CommonFileDialog

Microsoft.WindowsAPICodePack.Dialogs名前空間にあります。

プロパティ 内容
string DefaultDirectory 最近使用されたディレクトリがないときに使用される、既定のディレクトリ。なお最近使用されたディレクトリの情報は[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\LastVisitedPidlMRU]で管理される
string InitialDirectory ダイアログが表示されたときに表示される、初期のディレクトリ。これがnullまたは空文字ならば、DefaultDirectoryが用いられる
     

CommonOpenFileDialog

プロパティ 内容
bool IsFolderPicker trueならば、フォルダを対象としたダイアログになる
bool Multiselect trueならば、ユーザは複数のファイルを選択できる
IEnumerable<string> FileNames 選択されたファイル名のコレクション。Multiselectがfalseならば、要素数が1のコレクション
     
Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog openFileDialog = new Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog();

openFileDialog.IsFolderPicker = false;
openFileDialog.Multiselect = false;
openFileDialog.DefaultDirectory = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);
openFileDialog.Filters.Add(new Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialogFilter("Executable Files", ".exe"));

if (openFileDialog.ShowDialog() == Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialogResult.Ok)
{
    string fileName = openFileDialog.FileNames.First();
}
複数の技術系サイトから、まとめて検索