ここではVB.NETで「フォルダを選択する」ダイアログボックスを表示する方法について紹介します。

FolderBrowserDialogクラス

「フォルダを選択する」ダイアログボックスを表示するには、FolderBrowserDialogクラスをインスタンス化して、ShowDialogメソッドでダイアログボックスを表示します。

FolderBrowserDialogクラスのプロパティ

以下は主なFolderBrowserDialogクラスのプロパティです。

プロパティ説明
Descriptionダイアログ ボックスのツリー ビュー コントロールの上部に表示する説明テキストを取得または設定します。
RootFolder参照の開始位置とするルート フォルダーを取得または設定します。
SelectedPathユーザーが選択したパスを取得または設定します。
ShowNewFolderButtonフォルダー参照ダイアログ ボックスに [新しいフォルダー] ボタンを表示するかどうかを示す値を取得または設定します。
表示する場合は「True」(既定値)、 表示しない場合は「False」を設定します。


「フォルダを選択する」ダイアログボックスのサンプル

まず、以下のようなフォームを作成します。 テキストボックスにはダイアログボックスで選択したフォルダのパスを表示させます。


以下はボタンクリックで「フォルダを選択する」ダイアログボックスを表示するサンプルです。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Using dialog As New FolderBrowserDialog()
        ' プロパティの設定
        With dialog
            ' ダイアログのタイトル
            .Description = "フォルダを選択してください。"
        End With

        ' ダイアログを表示し、戻り値が [OK] の場合は、選択したフォルダ名を表示する
        If dialog.ShowDialog() = DialogResult.OK Then
            Me.TextBox1.Text = dialog.SelectedPath
        End If
    End Using
End Sub


実行して [フォルダを選択するダイアログボックス] ボタンをクリックするとダイアログボックスが表示されます。


ファルダを選択して [OK] ボタンをクリックするとテキストボックスにフォルダのパス(SelectedPath)が表示されます。


補足

RootFolderプロパティに「C:\temp」といったパスを指定することはできません。
RootFolderプロパティには、System.Environment.SpecialFolder列挙型を指定する必要があります。
・マイコンピュータの場合は「System.Environment.SpecialFolder.MyComputer」
・デスクトップの場合は「System.Environment.SpecialFolder.DesktopDirectory」
他にもフィールドはありますので、詳細についてはMicrosoft Docsを参照してください。


以上、「フォルダを選択する」ダイアログボックスを表示する方法について解説しました。