当我尝试填充组合框时,它不会填充

时间:2017-10-20 23:02:31

标签: vb.net combobox

之前我能够根据另一个组合框选择填充一个组合框,然后继续编写代码,然后我再次测试它,它不再填充该列表,它与另一个组合列表,但其中一个没有。所以它填充了饮料,但不是主要饮料。我不确定这件事发生了什么,对我来说似乎都没问题。

Public Shared cmbCatDrinks As String = "Drinks"
Public Shared cmbCatMain As String = "Main"
Public Shared cmbCatBlank As String = ""
Public Shared cmbItemBlank As String = ""

Private Sub frmRestaurantOrd_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    cmbCat.Items.Add(cmbCatBlank)
    cmbCat.Items.Add(cmbCatDrinks)
    cmbCat.Items.Add(cmbCatMain)
End Sub

Private Sub cmbCat_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbCat.SelectedIndexChanged
    If cmbCat.SelectedItem = "Drinks" Then
        cmbItem.Items.Add("Water")
        cmbItem.Items.Add("Orange Juice")
        cmbItem.Items.Add("Coca Cola")
        cmbItem.Items.Add("Beer")
        cmbSize.Items.Clear()
    ElseIf cmbCat.SelectedItem = "Main" Then
        cmbItem.Items.Add("Cheese and Tomato")
        cmbItem.Items.Add("Ham and Pineapple")
        cmbItem.Items.Add("Vegetarian")
        cmbItem.Items.Add("Meat Feast")
        cmbItem.Items.Add("Seafood")
        cmbSize.Items.Add("Small")
        cmbSize.Items.Add("Medium")
        cmbSize.Items.Add("Large")
        cmbItem.Items.Clear()
    Else cmbCat.SelectedItem = cmbCatBlank
        cmbItem.Items.Clear()
    End If
End Sub

1 个答案:

答案 0 :(得分:0)

当您选择“Main”时,您正在清除刚刚添加到cmbItem的项目。

ElseIf cmbCat.SelectedItem = "Main" Then
    cmbItem.Items.Add("Cheese and Tomato")
    cmbItem.Items.Add("Ham and Pineapple")
    cmbItem.Items.Add("Vegetarian")
    cmbItem.Items.Add("Meat Feast")
    cmbItem.Items.Add("Seafood")
    cmbSize.Items.Add("Small")
    cmbSize.Items.Add("Medium")
    cmbSize.Items.Add("Large")
    cmbItem.Items.Clear() ' <-- this is clearing all the items you just added.