选择类似项目时删除ComboBox中的项目Vb.net DesktopApp

时间:2016-08-16 06:35:27

标签: vb.net

我有两个这样的组合框

enter image description here

因此,例如,如果我在第一个Drop Box中选择Apple,则第二个Drop Box不应显示项Apple 所以我想知道这可以做到吗? 我正在使用VB.Net开发桌面应用程序

Handles ComboBox1.DropDown
        With ComboBox1.Items
            .Add("Apple")
            .Add("Orange")
            .Add("Banana")

        End With

1 个答案:

答案 0 :(得分:0)

由于手动添加了项目,因此可能不希望使用数据源。如果是这种情况,你可以做一些简单的事情:

Public Class Form1

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    Me.ComboBox1.Items.Add("Apple")
    Me.ComboBox1.Items.Add("Orange")
    Me.ComboBox1.Items.Add("Beer")
    Me.ComboBox2.Items.Add("Apple")
    Me.ComboBox2.Items.Add("Orange")
    Me.ComboBox2.Items.Add("Beer")
End Sub

Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
    ' Just to see a visual of what was selected
    Dim selectedItem = CType(ComboBox1.SelectedItem, String)
    Dim resultIndex As Integer = ComboBox2.FindStringExact(ComboBox1.SelectedItem)
    Me.ComboBox2.Items.RemoveAt(resultIndex)
End Sub

结束班

填充selectedItem的行可以一起跳过,我只是把它放在那里,以便看到所选内容。然后,您可以使用selectedItem变量存储删除的项目,这样您就可以恢复任何不需要的更改。

最后一个想法是从命令按钮中删除该项目。这样就不会意外删除该项目。