选中复选框时,项目被添加到列表中,当选中第二个框时,第一项和第二项都被添加到列表中?

时间:2016-02-25 20:03:55

标签: vb.net

在VB studio 2013中接收入门编程讲座。   我决定为自己尝试一个列表框并且编码有困难,这是我的代码:

Toppingsselected =这是列表框的名称

Pepperoni =复选框的名称

Ham =第二个复选框的名称

Private Sub Small_CheckedChanged(sender As Object, e As EventArgs) Handles Pepperoni.CheckedChanged, Ham.CheckedChanged

      If Pepperoni.Checked = True Then
            toppingsselected.Items.Add("Pepperoni")
        Else
            toppingsselected.Items.Remove("Pepperoni")
        End If
        If Ham.Checked = True Then
            toppingsselected.Items.Add("Ham")
        Else
            toppingsselected.Items.Remove("Ham")
        End If
End Sub

基本上,当检查并取消选中"辣香肠"时,它会添加并删除"辣香肠"文本进出列表框,但当我检查" Ham"它将辣香肠和火腿添加到列表框中。

道歉,如果我没有理解这种语言,只是一个初学者,如果有人能告诉我哪里出错我会感激不尽

1 个答案:

答案 0 :(得分:0)

你为两个控件发出相同的事件,它会触发两个控件检查事件,只需使用下面的代码,我希望它能正常工作。

Private Sub Small_CheckedChanged(sender As Object, e As EventArgs) Handles   Pepperoni.CheckedChanged, Ham.CheckedChanged
 If sender.Name = "Pepperoni" Then
  If Pepperoni.Checked = True Then
        toppingsselected.Items.Add("Pepperoni")
    Else
        toppingsselected.Items.Remove("Pepperoni")
    End If
End If
If sender.Name = "Ham" Then
    If Ham.Checked = True Then
        toppingsselected.Items.Add("Ham")
    Else
        toppingsselected.Items.Remove("Ham")
    End If
End If
End Sub