【備忘録】C#のOpenFileDialogでフォルダ選択する方法

C#

皆さん、こんにちは!
上越市を拠点にし、「FA設備・装置開発」と「画像処理」に強い会社、NSIです!
私達は豊富な経験と専門知識で、各種業界の自動化・システム化のお手伝いをしています。

5月も半ばになり、気温もだんだん夏に近づいてきましたね。
25℃超えの日もちらほら増え、夏本番に向けてそろそろ心の準備を始めています。

今回は「C#のOpenFileDialogでフォルダ選択する方法」をご紹介します。
ぜひご覧ください!

OpenFileDialogとは?

C#でファイル選択する際にお馴染みのダイアログです。
PCをよく使う方は頻繁に見かけるのではないでしょうか?

OpenFileDialogは基本的に ファイル選択 に使用されるダイアログですが…。
実は、フォルダ選択 にも応用することが可能です。

OpenFileDialogでフォルダ選択する方法

C#でフォルダ選択する場合、「FolderBrowserDialog」を使うのが一般的ですが、これが意外と不便で使いづらいことも…。そこで、以前「CommonOpenFileDialog」を使う方法についてご紹介しましたが、実は「OpenFileDialog」でもフォルダ選択が可能です。

フォルダ選択は、以下のようにOpenFileDialogの設定を少し変更するだけで実現できます。
基本的にはファイル選択用ですが、フォルダ選択としても利用可能です。

private void button1_Click(object sender, EventArgs e)
{
	using (OpenFileDialog ofd = new OpenFileDialog())
	{
		// フォルダを選択できるようにする
		ofd.FileName = "SelectFolder";	// デフォルトのファイル名
		ofd.Filter = "Folder|.";		// フォルダのみを表示
		ofd.CheckFileExists = false;	// 存在しないファイル名を指定可能
		if(ofd.ShowDialog(this) == DialogResult.OK)
		{
			// 選択したフォルダ名を表示
			MessageBox.Show(Path.GetDirectoryName(ofd.FileName), "選択したフォルダ名");
		}
	}
}

注意点
ダイアログを操作する際、フォルダ自体をクリックすると、そのフォルダ内の階層に移動してしまうため、右下の 開く」ボタンを直接クリック して選択するようにしてください。

べんぞうくん
べんぞうくん

挙動にクセがあるので、やっぱり「CommonOpenFileDialog」がオススメ。

CommoOpenFileDialogを使う方法についてはこちら↓

最後に

今回は C#のOpenFileDialogでフォルダ選択する方法 についてご紹介しました。
少しクセはありますが、工夫次第で意外と使えるので、状況に応じて使い分けてみてください。

ここまで読んでいただき、ありがとうございました。
ご質問・ご要望・ご相談などは、下記お問い合わせフォームからお気軽にご連絡ください。
http://www.net-nsi.co.jp/toiawase.html

べんぞうくん
べんぞうくん

この記事が役に立ったらGoodボタンを押してね~

タイトルとURLをコピーしました