首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > VB Dotnet >

怎么實現兩個combobox的聯動

2012-02-24 
如何實現兩個combobox的聯動?程序包含一個ACCESS數據庫,數據庫里包含一個表和兩個項目:name和Gender分別對

如何實現兩個combobox的聯動?
程序包含一個ACCESS數據庫,數據庫里包含一個表和兩個項目:name和Gender分別對應兩個combobox 想實現的效果:
1. 當其中一個選擇之後另外一個自動對應
比如name選擇了 Sam ,gender自動變為male
反之當gender選擇了male,則NAME里將列出所有GENDER為MALE的人比如SAM , RICHARD。。。。

2.當一項為空的時候另一項自動清空

3.可以編輯並且錄入新的數據


[解决办法]
http://topic.csdn.net/u/20110912/18/b2b76dd2-18f8-4130-83bc-5fef08336e5a.html?63982
[解决办法]

VB.NET code
    'connstr為你的連接字符    'tablename為你的表名    Public Sub CreateItem(ByVal cmdstr As String, ByVal cbx As ComboBox)        Dim conn As New OleDbConnection(connstr)        Dim sda As New OleDbDataAdapter        Dim cmd As New OleDbCommand(cmdstr, conn)        Dim sds As New DataSet()        Try            sda.SelectCommand = cmd            sda.Fill(sds, "Item")        Catch ex As Exception            MessageBox.Show(ex.ToString, "CeateItem Err")            Return        End Try        If sds.Tables().Item(0).Rows.Count > 0 Then            For i = 0 To sds.Tables.Item(0).Rows.Count - 1                cbx.Items.Add(sds.Tables.Item(0).Rows(i).Item(0).ToString)            Next i        End If    End Sub    Private Sub fmMain_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load        CreateItem("SELECT name from  tablename", cbxname)        CreateItem("SELECT gender from  tablename", cbxgender)    End Sub    Private Sub cbxname_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbxname.SelectedIndexChanged        CreateItem("SELECT gender from tablename where name ='" & cbxname.Text.Trim & "'", cbxgender)    End Sub    Private Sub cbxgender_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cbxgender.SelectedIndexChanged        CreateItem("SELECT name from tablename where gender ='" & cbxgender.Text.Trim & "'", cbxname)    End Sub 

热点排行