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

ColorDialogクラス

「色を設定する」ダイアログボックスを表示するには、ColorDialogクラスをインスタンス化して、ShowDialogメソッドでダイアログボックスを表示します。

ColorDialogクラスのプロパティ

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

プロパティ説明
AllowFullOpenユーザーがダイアログ ボックスを使用してカスタム カラーを定義できるかどうかを示す値を取得または設定します。
表示する場合は「True」(既定値)、 表示しない場合は「False」を設定します。
Colorユーザーが選択した色を取得または設定します。
FullOpenダイアログ ボックスが開かれたときに、カスタム カラーの作成用のコントロールを表示するかどうかを示す値を取得または設定します。
表示する場合は「True」(既定値)、 表示しない場合は「False」を設定します。
ShowNewFolderButtonフォルダー参照ダイアログ ボックスに [新しいフォルダー] ボタンを表示するかどうかを示す値を取得または設定します。
表示する場合は「True」、 表示しない場合は「False」(既定値)を設定します。


「色を設定する」ダイアログボックスのサンプル

まず、以下のようなフォームを作成します。 背景色を変更するテキストボックスを用意します。



以下はボタンクリックで「色を設定する」ダイアログボックスを表示するサンプルです。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Using dialog As New ColorDialog()
        ' プロパティの設定
        With dialog
            ' カスタムカラーを定義可能にする
            .AllowFullOpen = True

            ' 初期値の色を設定する
            .Color = TextBox1.BackColor
        End With

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


実行して [色を設定するダイアログボックス] ボタンをクリックするとダイアログボックスが表示されます。



色を選択して [OK] ボタンをクリックするとテキストボックスの背景色が変更されます。


プロパティの設定でFullOpenにTrueを設定するとカスタムカラーの作成用のコントロールが表示されます。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Using dialog As New ColorDialog()
        ' プロパティの設定
        With dialog
            ' カスタムカラーを定義可能にする
            .AllowFullOpen = True

            ' カスタムカラーの作成用のコントロールを表示する
            .FullOpen = True

            ' 初期値の色を設定する
            .Color = TextBox1.BackColor
        End With

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




以上、「色を設定する」ダイアログボックスを表示する方法について解説しました。