Foxtable(狐表)用户栏目专家坐堂 → 逻辑型字段问题


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

主题:逻辑型字段问题

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


加好友 发短信
等级:小狐 帖子:373 积分:2682 威望:0 精华:0 注册:2020/7/24 10:30:00
逻辑型字段问题  发帖心情 Post By:2022/8/2 14:25:00 [只看该作者]


老师:

      问一下,这种逻辑型字段到了ListView 里面就变成了 true 与false  ,怎么调整为”是“与”否“?
.
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:111420 积分:567176 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/2 14:34:00 [只看该作者]

怎么生成ListView 的?

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


加好友 发短信
等级:小狐 帖子:373 积分:2682 威望:0 精华:0 注册:2020/7/24 10:30:00
回复:(有点蓝)怎么生成ListView 的?  发帖心情 Post By:2022/8/2 16:00:00 [只看该作者]

用了一个按钮
图片点击可在新窗口打开查看

Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
lvw.StopRedraw() '暂停绘制
lvw.Columns.Clear() '清除原来的列
lvw.Rows.Clear() '清除原来的行
lvw.Images.Clear() '清除原来的图片
lvw.GridLines = True '显示网格线
lvw.MultiSelect = False '禁止按Ctrl多选
lvw.CheckBoxes = True '显示复选框
lvw.View = ViewMode.Details '显示模式为详细信息
Dim cls() As String = {"集团公司","公司名称","公司属性","公司层次","是否并表","控股比例","归属母公司","公司代码"} '指定要显示的各列
Dim wds() As Integer = {"200","200","200","200","200","200","200","200"} '定义列宽
For i As Integer = 0 To  cls.Length - 1
    Dim c As WinForm.ListViewColumn = lvw.Columns.Add()
    c.Name = cls(i) '指定列名
    c.Text = cls(i)'指定列标题
    c.Width = wds(i) '指定列宽

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


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

赋值的代码呢!!!

按单元格赋值的时候,自己判断是true就设置为“是”

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


加好友 发短信
等级:小狐 帖子:373 积分:2682 威望:0 精华:0 注册:2020/7/24 10:30:00
回复:(有点蓝)赋值的代码呢!!!按单元格赋值的时...  发帖心情 Post By:2022/8/2 16:30:00 [只看该作者]

写的好像有问题,麻烦老师改改


For Each dr As DataRow In DataTables("公司架构维护").DataRows '从数据表中提取数据
    Dim r As  WinForm.ListViewRow =  lvw.Rows.Add() '增加一行
    For Each cl As String In cls '逐列取值
        Select Case cl
            Case "控股比例" '
                r(cl) = format(dr(cl),"00.0%") '则显示千位分割符号
            Case "是否并表"
                If cl= True Then
                    r(cl) = "是"
                End If
            Case Else
                r(cl) = dr(cl)
        End Select
    Next
Next
lvw.ResumeRedraw() '恢复绘制

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


加好友 发短信
等级:超级版主 帖子:111420 积分:567176 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/2 16:35:00 [只看该作者]

有什么问题?能不能尽量一次性把问题描述完整,不要老是一截一截的

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


加好友 发短信
等级:小狐 帖子:373 积分:2682 威望:0 精华:0 注册:2020/7/24 10:30:00
回复:(有点蓝)有什么问题?能不能尽量一次性把问题...  发帖心情 Post By:2022/8/2 17:14:00 [只看该作者]

现在的需求是:表格里面的打勾的效果怎么在listview 里面显示出来?  

以下是表格的显示
图片点击可在新窗口打开查看

以下是listview 里面的显示


图片点击可在新窗口打开查看


生成的代码:
Dim lvw As WinForm.ListView = e.Form.Controls("ListView1")
lvw.StopRedraw() '暂停绘制
lvw.Columns.Clear() '清除原来的列
lvw.Rows.Clear() '清除原来的行
lvw.Images.Clear() '清除原来的图片
lvw.GridLines = True '显示网格线
lvw.MultiSelect = False '禁止按Ctrl多选
lvw.CheckBoxes = True '显示复选框
lvw.View = ViewMode.Details '显示模式为详细信息
Dim cls() As String = {"集团公司","公司名称","公司属性","公司层次","是否并表","控股比例","归属母公司","公司代码"} '指定要显示的各列
Dim wds() As Integer = {"200","200","200","200","200","200","200","200"} '定义列宽
For i As Integer = 0 To  cls.Length - 1
    Dim c As WinForm.ListViewColumn = lvw.Columns.Add()
    c.Name = cls(i) '指定列名
    c.Text = cls(i)'指定列标题
    c.Width = wds(i) '指定列宽
Next
For Each dr As DataRow In DataTables("公司架构维护").DataRows '从数据表中提取数据
    Dim r As  WinForm.ListViewRow =  lvw.Rows.Add() '增加一行
    For Each cl As String In cls '逐列取值
        Select Case cl
            Case "控股比例" '
                r(cl) = format(dr(cl),"00.0%") '则显示千位分割符号
            Case Else
                r(cl) = dr(cl)
        End Select
    Next
Next
lvw.ResumeRedraw() '恢复绘制



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


加好友 发短信
等级:超级版主 帖子:111420 积分:567176 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/2 17:22:00 [只看该作者]

无法显示打勾效果,只能使用其它字符替代,比如是/否

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


加好友 发短信
等级:小狐 帖子:373 积分:2682 威望:0 精华:0 注册:2020/7/24 10:30:00
回复:(有点蓝)无法显示打勾效果,只能使用其它字符...  发帖心情 Post By:2022/8/3 14:58:00 [只看该作者]

这个写进去以后报错了,转换不成“是”与“否”。

 For Each cl As String In cls '逐列取值
        Select Case cl
            Case "控股比例" '
                r(cl) = format(dr(cl),"00.0%") '则显示千位分割符号
            Case "是否并表"
                If cl = True Then
                    r(cl) =  "是"
                    If cl = False Then
                        r(cl) =  "否"
                    End If
                End If
            Case Else
                r(cl) = dr(cl)
        End Select
图片点击可在新窗口打开查看

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


加好友 发短信
等级:超级版主 帖子:111420 积分:567176 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/8/3 15:00:00 [只看该作者]

            Case "是否并表"
                If dr(cl) = True Then
                    r(cl) =  "是"
                else
                    r(cl) =  "否"
                End If
           Case Else

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