我有一个组合框和一个列表框。当用户从组合框中选择一个项目时,列表框将显示某个数据。然后,当用户从组合框切换项目时,列表框将显示另一组数据。
但是当我将组合框的值从“监视器”更改为“鼠标”时,列表框中的数据将继续并且不会更改。
这是我的代码。 提前谢谢。
Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
If ComboBox1.Text = "Monitor" Then
ListBox1.Items.Add("Monitor 1")
ListBox1.Items.Add("Monitor 2")
ListBox1.Items.Add("Monitor 3")
End If
If ComboBox1.Text = "Mouse" Then
ListBox1.Items.Add("Mouse 1")
ListBox1.Items.Add("Mouse 2")
ListBox1.Items.Add("Mouse 3")
End If
答案 0 :(得分:0)
在分配下一个值之前清除ListBox。
Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
ListBox1.Items.Clear()
If ComboBox1.Text = "Monitor" Then ......
答案 1 :(得分:0)
您需要使用VALUE。 设置组合框时,您将拥有文本和值。
Private Sub ComboBox1_SelectedIndexChanged(sender as Object,e As EventArgs)处理ComboBox1.SelectedIndexChanged
ListBox1.Items.Clear()
If ComboBox1.value = "Monitor" Then
ListBox1.Items.Add("Monitor 1")
ListBox1.Items.Add("Monitor 2")
ListBox1.Items.Add("Monitor 3")
End If
If ComboBox1.value = "Mouse" Then
ListBox1.Items.Add("Mouse 1")
ListBox1.Items.Add("Mouse 2")
ListBox1.Items.Add("Mouse 3")
End If