以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  在窗口里有两个combobox控件,如何让其中一个combobox的项目随另一个变化?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=72423)

--  作者:gdjoss
--  发布时间:2015/7/30 8:39:00
--  在窗口里有两个combobox控件,如何让其中一个combobox的项目随另一个变化?
如题,有组合框A,组合框B,另有数据表a列、b列,a列的一项对应着b列的多项。组合框A绑定a列,如何让组合框B根据A当前的值将绑定内容设置为在数据表中对应的b列?
--  作者:yan2006l
--  发布时间:2015/7/30 9:03:00
--  
在组合框B的PrepareEdit事件中输入如下代码:

If e.Col.Name = "县市" Then \'如果正在编辑的是县市列
    \'从行政区域表提取该省市的县市作为列表项目
     e.Col.Combolist = DataTables("行政区域").GetComboListString("县市", "[省市] = \'" & e.Row("省市") & "\'")
End
If


--  作者:大红袍
--  发布时间:2015/7/30 9:06:00
--  

 参考  http://www.foxtable.com/help/topics/1523.htm

 


--  作者:gdjoss
--  发布时间:2015/7/30 9:06:00
--  回复:(yan2006l)在组合框B的PrepareEdit事件中输入...
窗口控件combobox没有这个属性呀
--  作者:yan2006l
--  发布时间:2015/7/30 9:08:00
--  
Enter事件
--  作者:有点蓝
--  发布时间:2015/7/30 9:19:00
--  
Dim cmb As WinForm.ComboBox
cmb = Forms("窗口1").Controls("ComboBox1")
cmb.ComboList = DataTables("表a").GetComboListString("a列") 绑定组合框A
然后再组合框A的SelectedIndexChanged事件写下面代码
Dim cm As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim cb As WinForm.ComboBox
cb = Forms("窗口1").Controls("ComboBox2")
cb.ComboList = DataTables("表a").GetComboListString("b列","[a列] =\'" & cm.Text & "\'")