注册 登录
编程论坛 ASP.NET技术论坛

如何给datagrid"删除" 列分权限

scindy 发布于 2007-07-18 11:28, 922 次点击
datagrid里面有一个"删除" 列,如何给它分权限,就是有的人可以看见它,有的人不可以看见它~~~

肯定是根据用户判断`~``




13 回复
#2
来自北方的狼2007-07-18 11:34
表里给用户加个权限组,再通过查询返回来的组名确定是否显示那列,应该可以吧
#3
scindy2007-07-18 11:51
那这个判断的事件写在哪里呢?


#4
jimnox2007-07-18 12:01
用模板吧,现在我用GridView都完全用模板的,
#5
scindy2007-07-18 12:07
事件写在哪儿啊`~~

#6
jimnox2007-07-18 12:11
写模板的时候,用函数形式来写,参数就是绑定的数据
后台再写上对应的函数,用Response.Write()或者直接返回字符串的方法来重写页面
我现在用的是这种方法
#7
jimnox2007-07-18 12:14
比如说,前台写《# MyWrite(Eval.BindItem("列名").ToString());》(绑定具体怎么写我忘记了,没用工作的电脑上网)

后台定义一个MyWrite函数,参数是一个字符串,返回经过处理的HTML代码(字符串),就OK了!
#8
scindy2007-07-18 12:15
试一下`~`

谢谢~~~

#9
scindy2007-07-18 12:17
谁还有什么好的办法也可以说啊`~`


#10
jyoseyi2007-07-18 17:51
根据登陆用户,来判断他的角色,, 角色和权限是有联系的,这样用户和权限就联系起来了,哦1!我没注意偏题了.不好意思!

你说的是在datagrid里面的有个删除列,你可以根据用户是否有这个权限,来控制删除的显示和隐藏
if(权限判断)//有这个权限
{
datagrid.表.列号.visible=true;
}

#11
scindy2007-07-19 11:07
问题已经解决,谢谢各位的解答`~~`

我先在前台把那个删除列隐藏了``~

又在后台判断了权限以后,满足的再显示出来`~

<asp:ButtonColumn Visible="False" Text="删除" CommandName="Delete"></asp:ButtonColumn>

MyDataGrid.Columns(4).Visible = True

这么做比较简单`~~`






[此贴子已经被作者于2007-7-19 11:08:22编辑过]

#12
jyoseyi2007-07-19 11:39
隐藏的方法不太好,也不安全.极少这样用
#13
jimnox2007-07-19 16:21

我不是很放心visable的安全性能

#14
冰彩虹2007-07-19 16:35
模版列里的按钮控制只能通过判断来控制列的可见性来处理
1