再次提问关于combobox的连动问题?
我先把程序的详细情况说一下,我将combobox1和combobox2与分别与一数据库的“地区”和“线路名称”两个字段连接(连接没有问题),数据库是access建的,连接用的是OleDbDataAdapter连接的。
我所要达到的目的是通过对combobox1的地区的选择后,combobox2下拉列表中显示的应只有所选地区的线路。我用的方法是在combobox2所连接的OleDbDataAdapter的配置数据适配器中的查询生成器里编写“SELECT DISTINCT 线路名称 FROM line WHERE (地区 = ' "+ combobox1.text + " ')”,运行没有错误,但combobox2下拉列表中是空的;但如果在查询生成器里编写“SELECT DISTINCT 线路名称 FROM line WHERE (地区 = '山东 ')”,运行后combobox2的下拉列表中就只显示山东的线路。
哪位高手可以给指点一下,如果需要用代码实现,能否给一些详细的代码提示,因为本人水平很低,是个菜鸟。
非常感谢您能把这个罗嗦的问题看完,祝大家好运常伴!
[解决办法]
参考 datarelation
[解决办法]
WHERE (地区 = ' "+ combobox1.SelectedItem.toString() + " ')”,
[解决办法]
楼主你通过combobox1.selectedItem取到的只是DataRowView这一个对象类型值!!!!
你要通过combobox1.SelectedValue取值!
[解决办法]
load
ds2
cmd.commandtext=SELECT DISTINCT 地区,线路名称 FROM line
OleDbDataAdapter ol=new OleDbDataAdapter(cmd)
ol.fill(ds2)
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
dataview dv=ds2.tables[0].defaultview()
dv.rowfilter=( "地区= ' " + combobox1.selectvalue+ " ' ")
ComboBox2.DataSource = dv
ComboBox2.DisplayMember = "线路名称 "
ComboBox2.ValueMember = "线路名称 "
End Sub
你式以下吧