以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于combobox的数据筛选问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=56284)

--  作者:yqwllm
--  发布时间:2014/9/2 15:11:00
--  关于combobox的数据筛选问题
有两个表,一个是
A表
单位号           单位名称
123456      单位123456
234567      单位234567
345678      单位345678 
456789      单位456789

B表
员工号   姓名  所属单位号
0011    张三   123456
0022    王五   123456
0033    赵四   234567
0044    刘六   345678
0055    冯七   456789   
0066    马八   456789   
0077    牛九   234567

在第一个combobox1中用名称选单位‘单位123456’  在第二个中显示所属单位的员工,如何实现???急


--  作者:Bin
--  发布时间:2014/9/2 15:37:00
--  

先利用FIND找到单位号,再利用单位号 用GetComboListString 获取对应的员工


--  作者:yqwllm
--  发布时间:2014/9/3 17:20:00
--  

Dim cmb As WinForm.ComboBox = Forms("登录").Controls("combobox1")
Dim str As String = e.Form.Controls("ComboBox1").Value
\'cmb.ComboList = DataTables("表A").GetComboListString("规格", "型号 = \'" & str & "\'")

 

Dim dr As DataRow
dr = DataTables("单位主表").Find("unitname = \'" & str & "\'")
MessageBox.Show(dr)


Dim text2 As WinForm.TextBox =   e.Form.Controls("textbox2")
text2 = Tables("单位主表").Current("unitid")


--  作者:yqwllm
--  发布时间:2014/9/3 17:39:00
--  

还是不行

 


--  作者:有点甜
--  发布时间:2014/9/3 17:51:00
--  

 参考代码,如果还不会做,请把例子上传

 

 

Dim str As String = e.Form.Controls("ComboBox1").Value

Dim dr As DataRow
dr = DataTables("单位主表").Find("unitname = \'" & str & "\'")

If dr IsNot Nothing Then
    Dim cmb2 As WinForm.ComboBox = e.Form.Controls("combobox2")
    cmb2.ComboList = DataTables("员工表").GetComboListString("姓名", "所属单位号 = \'" & dr("单位号") & "\'")
End If


--  作者:yqwllm
--  发布时间:2014/9/5 16:58:00
--  
谢谢,选择后上次选择的值仍存在,怎么样能赋初始化的值?
Dim str As String = e.Form.Controls("ComboBox1").
str= \'\' 
不可以啊!

--  作者:有点甜
--  发布时间:2014/9/5 16:59:00
--  
 e.Form.Controls("ComboBox1"). Text = ""
--  作者:yqwllm
--  发布时间:2014/9/5 22:42:00
--  
谢谢