タイトル | : Re: コンボボックスのドロップダウンについて |
記事No | : 8441 |
投稿日 | : 2008/11/29(Sat) 17:05 |
投稿者 | : 魔界の仮面弁士 |
Imports KeyValue = System.Collections.Generic.KeyValuePair(Of String, String) Public Class Form1
Private list As New List(Of KeyValue)()
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load list.Add(New KeyValue("001", "value1")) list.Add(New KeyValue("002", "value2")) list.Add(New KeyValue("003", "value3")) list.Add(New KeyValue("004", "value4")) list.Add(New KeyValue("005", "value5")) list.Add(New KeyValue("006", "value6")) list.Add(New KeyValue("007", "value7")) list.Add(New KeyValue("", Nothing))
'こうすると、空白を選択させた状態にすることすらできないはず。 ComboBox1.DropDownStyle = ComboBoxStyle.DropDown ComboBox1.DataSource = list.ToArray() ComboBox1.DisplayMember = "Value" ComboBox1.ValueMember = "Key" ComboBox1.Text = ""
'sio さんの「空白が選択されてしまう」状態はこれかな? ComboBox2.DropDownStyle = ComboBoxStyle.DropDownList ComboBox2.DataSource = list.ToArray() ComboBox2.DisplayMember = "Value" ComboBox2.ValueMember = "Key" ComboBox2.SelectedValue = ""
'で、こういう状態になればよいのかな? ComboBox3.DropDownStyle = ComboBoxStyle.DropDownList ComboBox3.DataSource = list.ToArray() ComboBox3.DisplayMember = "Value" ComboBox3.ValueMember = "Key" ComboBox3.SelectedIndex = -1 End Sub
Private Sub UpdateLabel(ByVal sender As Object, ByVal e As EventArgs) Handles _ ComboBox1.SelectedIndexChanged, ComboBox2.SelectedIndexChanged, ComboBox3.SelectedIndexChanged, _ ComboBox1.GotFocus, ComboBox2.GotFocus, ComboBox3.GotFocus
Dim combo As ComboBox = DirectCast(sender, ComboBox)
Label1.Text = String.Format("Name={0},Index={1},Value={2},Text={3}".Replace(",", vbNewLine), _ combo.Name, combo.SelectedIndex, combo.SelectedValue, combo.SelectedText) End Sub End Class
|