根据角色显示命令列的一部分

时间:2012-04-14 15:28:57

标签: asp.net vb.net webforms asp.net-membership

我有一个带有gridview的页面。 gridview默认选中“启用编辑”和“启用删除”。我希望能够在代码隐藏的page_load事件中“取消选中”其中任何一个。

我找到了this SO question,但这隐藏了整个命令列。我只想根据用户的角色隐藏“编辑”或“删除”超链接。我该怎么做呢?

1 个答案:

答案 0 :(得分:2)

将此添加到GridView:ondatabound =“GridView1_DataBound” 在GridView中分隔命令列

<asp:CommandField ShowDeleteButton="True"  />
<asp:CommandField  ShowEditButton="True" />

protected void GridView1_DataBound(object sender, EventArgs e)
{
        if (User.IsInRole("Administrator"))
        {
            GridView1.Columns[0].Visible = true; 
            GridView1.Columns[1].Visible = true; 
        }
        else {
            GridView1.Columns[0].Visible = false;
        }
}

根据您的要求更改列索引,第一列为0