宇宙仮面の
C# Programming

 
Image

フォルダーを選択するダイアログ

開発環境: Visual Studio 2002

1.目次

2.目的

.NET Framework V1.0 では、フォルダを選択するダイアログがサポートされておらず、
自分で作るとか、未サポートのメソッドを使うとか、VBコンパチライブラリを使う必要がありました。

.Net Framework V1.1 では、FolderBrowserDialog が標準でサポートされるようになり、楽になっています。

3.参考書

(1) MSDN FolderBrowserDialog クラス
(2) アットマーク・アイティ [フォルダの参照]ダイアログを使用するには?

4.FolderBrowserDialog

Visual Studio 2003 を開いてみてください。
次のように、ツールバーに FolderBrowserDialog があるのがわかります。
これは、Visual Studio 2002 には無かったものです。

使い方は、至って簡単で、ツールボックスから、フォームへドラッグ&ドロップすれば、自動的に組み込んでくれます。

Image


呼び出し方
呼び出す場合は、ボタンが押されたときのイベントで、

private void button1_Click(object sender, System.EventArgs e)
{
DialogResult result = this.folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK)
Console.WriteLine("Folder = " + this.folderBrowserDialog1.SelectedPath);
}

という感じで呼び出してあげればOKです。

ツールボックスを使わない場合
FolderBrowserDialog fDialog = new FolderBrowserDialog();
DialogResult result = fDialog.ShowDialog();
if (result == DialogResult.OK)
Console.WriteLine("Folder = " + fDialog.SelectedPath);

というように直接インスタンスを宣言して、呼び出してあげればOKです。

プロパティ
RootFolder参照の開始位置とするディレクトリを に設定します。
SelectedPath 最初に選択されるパスを指定することができます。デフォルトでは、Desktop になっています。
ShowNewFolderButton新しいフォルダの作成(M)ボタンの表示・非表示を選択します。
Description追加の情報を表示できます。下図の赤枠参照。

Image