1
我有一個帶有gridview的頁面。 gridview默認選中「啓用編輯」和「啓用刪除」。我希望能夠在代碼隱藏page_load事件中「取消」其中的任何一個。根據角色顯示命令列的一部分
我發現this SO question但這隱藏了整個命令列。我只想隱藏基於用戶角色的「編輯」或「刪除」超鏈接。我會如何去做這件事?
我有一個帶有gridview的頁面。 gridview默認選中「啓用編輯」和「啓用刪除」。我希望能夠在代碼隱藏page_load事件中「取消」其中的任何一個。根據角色顯示命令列的一部分
我發現this SO question但這隱藏了整個命令列。我只想隱藏基於用戶角色的「編輯」或「刪除」超鏈接。我會如何去做這件事?
添加到您的GridView:在GridView ondatabound =「GridView1_DataBound」 分隔命令列
<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
謝謝,沒不知道我可以像這樣分割命令區。 – Mekswoll 2012-04-14 17:11:27
可以將用戶檢查移到實用程序類,以避免在每個頁面上都有硬編碼角色。 – 2013-03-07 05:57:04