CustomScript

2014年11月25日火曜日

WPF勉強(4) フォルダ選択ダイアログの作成

  • .Net4.5
簡単に実装するなら FolderBrowserDialog を使えばよいのですが、なんかボタンが小さくてヤダ、WPFなのにFormのコントロールを呼び出しているのがヤダ、というわけで別の方法での実装します。

参照に追加するのは Micorosoft.WindowsAPICodePack と Microsoft.WindowsAPICodePack.Shell です。追加するにはNuGetで「Windows API Code Pack - Shell」をインストールしてください(Coreもインストールされます)。

        private void ButtonFolder_Click(object sender, RoutedEventArgs e)
        {
            var dlg = new Microsoft.WindowsAPICodePack.Dialogs.CommonOpenFileDialog();
            dlg.Title = "作業フォルダの選択";
            dlg.IsFolderPicker = true;
            dlg.InitialDirectory = this.textBox1.Text;

            dlg.AddToMostRecentlyUsedList = false;
            dlg.AllowNonFileSystemItems = false;
            dlg.DefaultDirectory = this.textBox1.Text;
            dlg.EnsureFileExists = true;
            dlg.EnsurePathExists = true;
            dlg.EnsureReadOnly = false;
            dlg.EnsureValidNames = true;
            dlg.Multiselect = false;
            dlg.ShowPlacesList = true;

            if (dlg.ShowDialog() == Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialogResult.Ok)
            {
                this.textBox1.Text = dlg.FileName;
            }
        }

参考URL
http://stackoverflow.com/questions/4007882/select-folder-dialog-wpf
http://arikalog.hateblo.jp/entry/2013/12/20/211641
 

0 件のコメント:

コメントを投稿