以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  显示列  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=110949)

--  作者:刘林
--  发布时间:2017/12/12 19:49:00
--  显示列
Dim datalist As String = e.Form.Controls("combobox3").text
Dim cc2 As String = e.Sender.text
Tables(datalist).SetColVisibleWidth(cc2)

老师我想用checkcombobox来动态选表并动态显示指定列,checkcombobox列表选定是用"|“分隔,但没有列宽,就不能显示指定列,如何实现只设置显示指定列,而不用设置其列宽

--  作者:刘林
--  发布时间:2017/12/12 20:07:00
--  
Dim datalist As String = e.Form.Controls("combobox3").text
Dim cc2 As String = e.Form.Controls("checkedcombobox2").text
For Each cl As Col In Tables("帐号管理_table5").Cols
    If cc2.Contains(cl.name)
        Tables("帐号管理_table5").Cols(cl.name).Visible = True
    Else
        Tables("帐号管理_table5").Cols(cl.name).Visible = False
    End If 
Next

懂起了

--  作者:刘林
--  发布时间:2017/12/12 20:12:00
--  
但又发现个问题,用这种方式当选英语列时英语_a列也显示出来了,因为用的包含判断,怎么解决更好
--  作者:有点蓝
--  发布时间:2017/12/12 20:36:00
--  
Dim datalist As String = e.Form.Controls("combobox3").text
Dim cc2 As String = e.Form.Controls("checkedcombobox2").text
Dim t As Table = Tables("帐号管理_table5")
For Each cl As Col In t.Cols
    cl.Visible = False
Next
For Each c As String In  cc2.Split("|")
    t.Cols(c).Visible = True
Next