C#、というかWindows.Formsが提供するフォルダ選択ダイアログは、FolderBrowserDialogしかない。同僚さん:フォルダを選択するダイアログあるんですけど、これ、直接パス入力できないんですよね?
[フォルダの参照]ダイアログを使用するには?
起動時にどこのフォルダを表示するか?とか、新しいフォルダを作成するボタンを表示するかどうか?くらいは設定できる。でも、それだけ。何が面倒くさいって、ファイルサーバー上のファイルを探す時が非常に面倒くさい。そして、なんといかとても"ちゃちい"のだ。
これは1.1の頃から変わらず、4、4.5になった今でもこれしかないと思っていたし、実際、。探しても見つからなかった。
ただ、この同僚さんと話をしている時に気づいた。
と。もっとこう、なんというか、色々できたというか。このダイアログ使えたら万事解決ではないの?と。ん?いや待てよ?そういえば、Visual Studioでプロジェクトを作る時にフォルダを選択するけど、その時のダイアログはこれじゃないぞ?
で、色々調べてみた。同じことを思った人は少なからずいると思って。
HOW - Detailed Folder Browser - VS 2010
要は、Windows Vista以降で使用できるIFileOpenDialogインターフェースを実装すれば良いらしい。
手っ取り早く使いたいなら、Windows 7 API Code Packを使えば、"それ"が使えるようだ。NuGetでインストールできるらしいし。
(で、どうなったのかというと)
ただね、残念ながら、仕事ではほとんど需要ないんだよね…。
ファイル選択ダイアログは、需要が高く、まあ別に不便はないI/Fで使える。しかし、フォルダ選択ダイアログを出す必要のあるアプリって、あんまり作ったことがない。所定のフォルダにファイルを出力する事はあっても、フォルダをユーザーさんに選んでもらうケースってすくないんだよなぁ。
結局、テキストボックスを設け、そこに設定されたパスを初期値として与えて、従来のFolderBrowserDialogを使う事にしたようだ。
まあ、時間が空いた時にでも、ソースコードを眺めてみようと思いつつ、この件はクローズされた。
ただね、残念ながら、仕事ではほとんど需要ないんだよね…。
ファイル選択ダイアログは、需要が高く、まあ別に不便はないI/Fで使える。しかし、フォルダ選択ダイアログを出す必要のあるアプリって、あんまり作ったことがない。所定のフォルダにファイルを出力する事はあっても、フォルダをユーザーさんに選んでもらうケースってすくないんだよなぁ。
結局、テキストボックスを設け、そこに設定されたパスを初期値として与えて、従来のFolderBrowserDialogを使う事にしたようだ。
まあ、時間が空いた時にでも、ソースコードを眺めてみようと思いつつ、この件はクローズされた。
スポンサーサイト
当サイトは基本をすっ飛ばしてます。基本文法等は、@ITをどうぞ