Foxtable(狐表)用户栏目专家坐堂 → 请问如何有条件显示列?


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

主题:请问如何有条件显示列?

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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
请问如何有条件显示列?  发帖心情 Post By:2017/6/11 11:58:00 [只看该作者]

老师,您好!

我想当表第一列出现字符串“A”时,显示第二列,否则隐藏第二列。请问如何书写代码,在哪个事件中书写?

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


加好友 发短信
等级:八尾狐 帖子:1964 积分:15604 威望:0 精华:0 注册:2011/7/16 20:59:00
  发帖心情 Post By:2017/6/11 12:31:00 [只看该作者]

If e.DataCol.Name="第一列" Then
    If e.NewValue="A" Then
        Tables("表名").Cols("第一列").Visible=False
    Else
        Tables("表名").Cols("第一列").Visible=True
    End If
End If
放到表的DataColChanged这个事件中
[此贴子已经被作者于2017/6/11 12:32:10编辑过]

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/11 14:35:00 [只看该作者]

 你的逻辑有问题。是第一列某一行只要有A就隐藏第二列,还是说当前行为A,就隐藏第二列?

 

 


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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
  发帖心情 Post By:2017/6/11 15:06:00 [只看该作者]


我是想第一列某一行只要出现A,就出现第二列。

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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
  发帖心情 Post By:2017/6/11 15:30:00 [只看该作者]


是不是应该先隐藏第二列,当第一列某一行出现 “%A%”时,再Tables("表名").Cols("第二列").Visible = True ?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/11 16:27:00 [只看该作者]

AfterOpenProject事件、DataColChanged事件

 

Dim fdr As DataRow = DataTables("表A").Find("第一列 like '%A%'")
If fdr IsNot Nothing Then
    Tables("表A").cols("第二列").Visible = True
Else
    Tables("表A").cols("第二列").Visible = False
End If

 

 


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


加好友 发短信
等级:童狐 帖子:253 积分:2573 威望:0 精华:0 注册:2016/8/8 9:50:00
  发帖心情 Post By:2017/6/12 9:05:00 [只看该作者]


谢谢老师,成功解决!

 回到顶部