Vb.net 根据第一个组合框筛选其他组合框

Vb.net 根据第一个组合框筛选其他组合框,vb.net,Vb.net,如何基于第一个组合框筛选其他组合框,该组合框与其他组合框具有相同的数据 我正在使用visual basic 2010和ms access数据库,该数据库与代码连接。在vb表单上,我有五个组合框,所有组合框都用以下代码填充相同的数据: 私有子加载主题() 数据是 “美国” “俄罗斯” “中国” “印度” “非洲” “欧洲” 现在我想创建一个代码,可以过滤其他常用框,即 如果我从combobox1中提到的5个列表中选择“India”,那么 其他4个组合框不得在列表中显示“India” 然后 如果我从

如何基于第一个组合框筛选其他组合框,该组合框与其他组合框具有相同的数据

我正在使用visual basic 2010和ms access数据库,该数据库与代码连接。在vb表单上,我有五个组合框,所有组合框都用以下代码填充相同的数据:

私有子加载主题()

数据是 “美国” “俄罗斯” “中国” “印度” “非洲” “欧洲”

现在我想创建一个代码,可以过滤其他常用框,即

如果我从combobox1中提到的5个列表中选择“India”,那么 其他4个组合框不得在列表中显示“India”

然后

如果我从4个列表中选择“欧洲”,因为combobox1中已经选择了1个名称,那么其他3个Combox1在列表中不能显示“印度”和“欧洲”


所有组合框也应如此。

我不熟悉visual basic,但您应为所有组合框实现选择更改事件,并在选择更改时从其他组合框中删除相应的元素,并添加不再过滤掉的元素。这是一个快速而肮脏的解决方案,但应该有效

    Dim OleDBC As New OleDbCommand
    Dim OleDBDR As OleDbDataReader
    With OleDBC
        .Connection = conn
        .CommandText = "SELECT subject FROM tblsubjectBA"
    End With
    OleDBDR = OleDBC.ExecuteReader
    cmbsub1.Items.Clear()
    cmbsub2.Items.Clear()
    cmbsub3.Items.Clear()
    cmbsub4.Items.Clear()
    If OleDBDR.HasRows Then
        While OleDBDR.Read
            cmbsub1.Items.Add(OleDBDR.Item(0))
            cmbsub2.Items.Add(OleDBDR.Item(0))
            cmbsub3.Items.Add(OleDBDR.Item(0))
            cmbsub4.Items.Add(OleDBDR.Item(0))
        End While
    End If
End Sub