Foxtable(狐表)用户栏目专家坐堂 → [求助]可视化授权,对窗口中RecordGrid1绑定表,只能实现“禁止编辑”,而不能实现“对指定列不可见”?


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

主题:[求助]可视化授权,对窗口中RecordGrid1绑定表,只能实现“禁止编辑”,而不能实现“对指定列不可见”?

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


加好友 发短信
等级:四尾狐 帖子:902 积分:8300 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]可视化授权,对窗口中RecordGrid1绑定表,只能实现“禁止编辑”,而不能实现“对指定列不可见”?  发帖心情 Post By:2017/2/13 13:18:00 [只看该作者]

http://www.foxtable.com/webhelp/scr/1600.htm
[求助]可视化授权,对窗口中RecordGrid1绑定表,只能实现“禁止编辑”,而不能实现“对指定列不可见”?

For Each t As Table In Tables
    t.Visible =
True
    t.AllowEdit =
true
    For Each c As Col In t.Cols
        c.Visible =
True
        c.AllowEdit =
True
    Next

Next
Tables
("授权表").Visible = (User.Type <> UserTypeEnum.User )
If
User.Type = UserTypeEnum.User Then
    For Each dr As DataRow In DataTables("授权表").Select("用户名 = '" & User.Name & "'" )
        If
dr.IsNull("列名")
Then
       
    Tables(dr("表名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).AllowEdit = Not dr("不可编辑")

        Else
           
Tables(dr("表名")).Cols(dr("列名")).Visible = Not dr("不可见")
            Tables
(dr("表名")).Cols(dr("列名")).AllowEdit = Not dr("不可编辑")
        End
If
    Next
End
If


怎样才能做到,可以对具体窗口控件绑定表的制定列进行授权?


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


加好友 发短信
等级:四尾狐 帖子:902 积分:8300 威望:0 精华:0 注册:2012/10/19 13:55:00
[求助]千万别沉啊?!  发帖心情 Post By:2017/2/13 14:57:00 [只看该作者]

千万别沉啊?!千万别沉啊?!

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


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

1、你记录窗口,不要单独设置【显示列】属性;

 

2、记录窗口控件,是默认根据表显示的列显示内容的。

 

3、做实例说明。


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


加好友 发短信
等级:二尾狐 帖子:509 积分:3553 威望:0 精华:3 注册:2012/11/13 15:49:00
  发帖心情 Post By:2017/2/13 16:05:00 [只看该作者]

可以的,用recordgrid的

Columns

返回或设置RecordGrid显示的列。

示例

Dim rgd As WinForm.RecordGrid = e.Form.Controls("RecordGrid1")
rgd.
Table = Tables("员工")
rgd
.Columns = "编号|姓名|部门|职务|性别|尊称|出生日期|地址|家庭电话|办公电话"
rgd.Build()

提示:必须先设置绑定表,再设置显示列,顺序不能错。


 回到顶部