以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]combox去掉之前的文本框的值  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=79964)

--  作者:huhu
--  发布时间:2016/1/13 10:23:00
--  [求助]combox去掉之前的文本框的值
combox2缺省有A,B,C3个下拉值。如果当textbox2的值为A的时候,combox2的下来值去掉A,只有B,C,这个该怎么去掉?

图片点击可在新窗口打开查看此主题相关图片如下:filter.png
图片点击可在新窗口打开查看


--  作者:Hyphen
--  发布时间:2016/1/13 10:32:00
--  
combox2,Enter事件

Dim txt = e.Form.Controls("TextBox2").Text

If txt = "A" Then
    e.Sender.ComboList = "A|B"
Else
   e.Sender.ComboList = "A|B|C"
End If

--  作者:huhu
--  发布时间:2016/1/13 10:39:00
--  
我举得例子是A,B,C,其实很多,一个一个这么判断,去除,是不是太麻烦了?
--  作者:Hyphen
--  发布时间:2016/1/13 10:44:00
--  
没有其它办法。要么自己定义一套规则存储到表格中,通过查表进行取值
--  作者:aduydgd
--  发布时间:2016/1/13 16:57:00
--  
combox2的值来自哪里?
--  作者:Hyphen
--  发布时间:2016/1/13 17:14:00
--  
存储在表格中
--  作者:aduydgd
--  发布时间:2016/1/14 11:13:00
--  
如果是系统的自定义列表项目,设置下“过滤条件”

如果是代码项目:

Dim cmd As New SQLCommand
Dim
dt As DataTable
Dim
cmb As WinForm.ComboBox
cmd.CommandText = "S ELECT DISTINCT 客户 From {订单} Where “字段”<> textbox2 "  或者  ("S ELECT DISTINCT 客户 From {订单} Where “字段” NOT LIKE textbox2 ") 这样就没有 textbox2  里面的内容了,祝你好运
dt = cmd.ExecuteReader()
cmb = e.Form.Controls(
"ComboBox1")
cmb.ComboList= dt.GetComboListString(
"客户"
)