コンボボックスの基本的な使い方として、コンボボックスの項目に文字列を設定し、 選択されている状態を取得する方法などを説明します。
フォーム上にコンボボックスを1個と、ボタンを2個貼り付けます。 その後、フォームロードイベントでコンボボックスの Itemsプロパティ(ObjectCollection) に各種文字列の追加で初期化を行います。
ボタン1クリックイベントでは、コンボボックスの選択値を取得し表示し、 ボタン2クリックイベントでは、コンボボックスの選択を解除します。
コンボボックスの基本的な使い方
Public Class frmComboBox '''''' フォームロードイベント ''' Private Sub frmComboBox_Load(sender As Object, e As EventArgs) Handles Me.Load 'コンボボックス初期化 With Me.ComboBox1 .DropDownStyle = ComboBoxStyle.DropDownList .Items.Add("あいうえお") 'ItemsはObjectのコレクション .Items.Add("かきくけこ") .Items.Add("さしすせそ") .Items.Add("たちつてと") .Items.Add("なにぬねの") .Items.Add("はひふへほ") .Items.Add("まみむめも") .Items.Add("やゆよ") End With End Sub '''''' ボタンクリックイベント・選択状態の表示 ''' Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click '選択されているIndexの取得 Dim intIdx As Integer = Me.ComboBox1.SelectedIndex '選択されている文字列の取得 Dim strSel As String = CType(Me.ComboBox1.SelectedItem, String) '結果表示 Dim strDsp As String = "Index : " & intIdx.ToString & vbCrLf & "文字列 : " & strSel MsgBox(strDsp, MsgBoxStyle.OkOnly, Me.Text) End Sub '''''' ボタンクリックイベント・選択状態の解除 ''' Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click '選択されている状態を解除 Me.ComboBox1.SelectedIndex = -1 End Sub End Class
結果これを実行しますと、以下の様になります。
ボタン1のクリック時は以下の様になります。
ボタン2のクリック時はコンボボックスの選択が解除され何も表示されないはずです。
尚、選択されている項目Index(SelectedIndex)ですが、この値が -1 であることが 未選択状態を表しますので、 -1 の場合には何も処理をしない様にした方が良いと思います。
関連する記事
⇒コンボボックスのItemsプロパティにクラスデータを設定する方法(コードと文字列をセットで設定)⇒ComboBoxの簡単な拡張クラス(枠線色の描画):[WndProc,CreateGraphics,DrawRectangle]
おすすめ本
PR
コメント