Foxtable(狐表)用户栏目专家坐堂 → ComboList的用法


  共有5855人关注过本帖树形打印复制链接

主题:ComboList的用法

帅哥哟,离线,有人找我吗?
cd_tdh
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3223 积分:21401 威望:0 精华:0 注册:2016/3/28 16:57:00
ComboList的用法  发帖心情 Post By:2023/5/9 17:51:00 [只看该作者]

1、ComboList 可以像复选组合框那样显示复选框框吗?
Select Case e.Col.Name
    Case "必填内容"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Dim lst As String = ""
            Dim dt As DataTable = DataTables(e.Row("表名"))
            For Each dc As DataCol In dt.DataCols
                lst &= "|" & dc.name
            Next
            lst = lst.trimstart("|")
            e.Col.ComboList = String.join("|", lst.toarray)
        End If
End Select

2、如果不行,用下拉窗口代替,生成目录树的代码该怎么修改?
Dim r As Row = Tables("必填内容表").Current
If r("表名") <> "" Then
    Dim dt As DataTable = DataTables(r("表名"))
    Dim lst As String = ""
    For Each dc As DataCol In dt.DataCols
        lst &= "|" & dc.name
    Next
    lst = lst.trimstart("|")
    Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
    trv.BuildTree(dt, lst)
End If
[此贴子已经被作者于2023/5/9 17:55:20编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/9 20:20:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
cd_tdh
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3223 积分:21401 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/5/10 8:10:00 [只看该作者]

我是想在焦点在必填内容列时,显示对应表名的所有列名,并且可以多选,表格中怎么用CheckedComboBox?
                e.Col.ComboList = dt.GetComboListString(lst)    
该怎么写?
[此贴子已经被作者于2023/5/10 8:31:31编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/10 8:38:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
cd_tdh
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3223 积分:21401 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/5/10 8:44:00 [只看该作者]

GetComboListString语法是(ColumnName,Filter, Sort)
ColumnName是指定的列名,
但是ComboList根据e.Row("表名")循环出来的所有列名,不知道该怎么写啊?
Select Case e.Col.Name
    Case "必填内容"
        If e.IsFocusCell Then '如果是焦点所在单元格
            Dim lst As String = ""
            Dim dt As DataTable = DataTables(e.Row("表名"))
            For Each dc As DataCol In dt.DataCols
                lst &= "|" & dc.name
            Next
            lst = lst.trimstart("|")
            e.Col.ComboList = dt.GetComboListString(没想明白这儿改怎么变通处理啊)
        End If
End Select
[此贴子已经被作者于2023/5/10 8:52:27编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/10 8:52:00 [只看该作者]

学会变通哦,不要只会抄。列名的获取方法参考1楼第一点的用法,根据表名列获取对应的列名,然后套入4楼帮助

 回到顶部
帅哥哟,离线,有人找我吗?
cd_tdh
  7楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3223 积分:21401 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/5/10 8:53:00 [只看该作者]

就是没想明白怎么变通处理啊

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/10 8:59:00 [只看该作者]

不是吧

e.Col.ComboList = lst

 回到顶部
帅哥哟,离线,有人找我吗?
cd_tdh
  9楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3223 积分:21401 威望:0 精华:0 注册:2016/3/28 16:57:00
  发帖心情 Post By:2023/5/10 9:10:00 [只看该作者]

这样写,没有复选框啊,没法一次选择我需要的多列内容。

图片点击可在新窗口打开查看此主题相关图片如下:qq截图20230510090135.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/10 9:11:00 [只看该作者]


 回到顶部
总数 11 1 2 下一页