DOBON.NET DOBON.NETプログラミング掲示板過去ログ

FileOpen(Save)Dialogの中身のコントロールが欲しい

環境/言語:[XP/Vista、.NET2.0以降]
分類:[.NET]

こんにちは、.NETのコントロールについて質問です

FileOpen(Save)Dialogの中身が独立したコントロールってあるのでしょうか
(フォルダ選択させるドロップダウン・Explorerっぽいメイン・左側のショートカットペイン?などの合体したやつ)

また、FolderBrowserDialogの中身が独立したコントロールは
存在したような記憶があるのですが、今見るとなぜか見つけられませんでした。

この2つのコントロールについて情報があればご教示いただければ幸いです

よろしくお願いします
■No26785に返信(ぺんたごんさんの記事)
> FileOpen(Save)Dialogの中身が独立したコントロール
> FolderBrowserDialogの中身が独立したコントロール

ComboBox, TreeView, ListView などを使って組み上げるという手はありますが、
ファイル選択機能を備えた標準のコントロールとしては用意されていないかと。

# 逆に VB2 の頃などは、標準で用意されているのは個々のパーツだけであり、
# コモンダイアログを呼び出すには、API を用いるか、追加のVBXコントロールを
# 利用しなければならかったのですけれどね。


(案1) WebBrowser コントロールにて表示させる。
 http://bbs.wankuma.com/index.cgi?mode=al2&namber=42000&KLOG=72

(案2) Microsoft.VisualBasic.Compatibility.dll の互換コントロールで代用。
 http://msdn.microsoft.com/ja-jp/library/tabywba0%28VS.90%29.aspx
 http://msdn.microsoft.com/ja-jp/library/a239y94a%28VS.90%29.aspx
 http://msdn.microsoft.com/ja-jp/library/76sskc44%28VS.90%29.aspx

(案3) TreeView や ListView を用いて表現する。
 http://dobon.net/vb/bbs/log3-11/6225.html
 http://www.codeproject.com/KB/cs/TreeViewFileExplorer.aspx
 http://www.codeproject.com/KB/miscctrl/FileBrowser.aspx
すでに魔界の仮面弁士さんから的確なアドバイスが書き込まれていますが補足として。

環境がVistaまたはWindows7であれば、
WebBrowser コントロールや ListView+IShellFolder の代わりに
IExplorerBrowser インターフェースを利用することも可能です。

また FolderBrowserDialog のツリービュー部分に対応するものとしては
INameSpaceTreeControl インターフェースを利用することが可能です。

あまり複雑なカスタマイズは難しいかもしれませんが
コモンダイアログで使える程度の操作は十分可能です。

ただしこれらのインターフェースについても
.NET Frameworkの標準コントロールではありませんので、
.NETでコントロールとして使うための仕組みは自分で用意してやる必要があります。
subaruさん
魔界の仮面弁士さん

返信ありがとうございます
Open(Save)Dialogの中身についてはまぁないだろうなとは思ってたので
自作に挑戦します^^

FolderBrowserDialogの中身のフォルダツリーは、なーんかどこかのブログでちらっと
独立コントロールがあるような記述を見かけた記憶があるのですが、
思い出せないので車輪の再発明だとしても自作してみます

とりあえず解決にしますが、もし追加情報がありましたらご教示お願いします

ありがとうございました。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板