How can I hide CommandField Button in GridView when user is Admin ?
<asp:GridView ID="AdminGrid" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" HorizontalAlign="Center" AutoGenerateColumns="false" ShowHeaderWhenEmpty="true" Width="900px" Height="121px" OnRowDataBound="OnRowDataBound"
DataKeyNames="Uid" AllowPaging ="true" OnRowDeleting="OnRowDeleting" OnSelectedIndexChanged="AdminGrid_SelectedIndexChanged">
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<EditRowStyle BackColor="#999999" />
<FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<SortedAscendingCellStyle BackColor="#E9E7E2" />
<SortedAscendingHeaderStyle BackColor="#506C8C" />
<SortedDescendingCellStyle BackColor="#FFFDF8" />
<SortedDescendingHeaderStyle BackColor="#6F8DAE" />
<Columns>
<asp:TemplateField HeaderText="Email Address" ItemStyle-Width="300">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("email") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtname" Text="" runat="server" />
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="footertxtname" Text="" runat="server" />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Role">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Eval("UserRole") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtname" Text="" runat="server" />
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="footertxtname" Text="" runat="server" />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Date Created/Time" ItemStyle-Width="300">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Eval("CreateDate") %>' />
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtname" Text="" runat="server" />
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="footertxtname" Text="" runat="server" />
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="">
<ItemTemplate>
</ItemTemplate>
<EditItemTemplate>
</EditItemTemplate>
<FooterTemplate>
</FooterTemplate>
</asp:TemplateField>
<asp:CommandField ButtonType="Button" ShowDeleteButton="true" ItemStyle-ForeColor="#00003D" ItemStyle-Width="150" />
</Columns>
<EmptyDataTemplate>
<div style="text-align: center;">
No User Records</div>
</EmptyDataTemplate>
</asp:GridView>
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
this.BindGrid();
string UserRole = "A";
foreach (GridViewRow row in AdminGrid.Rows)
{
Button btnDelete = row.Cells[4].Controls[0] as Button;
if (UserRole == "A")
{
btnDelete.Visible = true;
}
else if (UserRole == "U")
{
btnDelete.Visible = false;
}
}
}
}