Hi
Try this
<%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="DeleteRole.aspx.cs" Inherits="Admin_DeleteRole" Title="Untitled Page" %>
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
Select Role you want to Delete:<br />
<asp:ListBox ID="ListBox1" runat="server">
<asp:ListItem Value="">-- Select --</asp:ListItem>
</asp:ListBox>
<br />
<br />
<asp:Button ID="btnDelete" runat="server" OnClick="btnDelete_Click" Text="Delete Role" />
<br />
<br />
<asp:Label ID="lblMsg" runat="server" ForeColor="Red"></asp:Label><br />
<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/Admin/AddRole.aspx">Add new Role</asp:HyperLink>
</asp:Content>
and in code behind
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class Admin_DeleteRole : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
HyperLink1.Visible = false;
string[] rolesname = Roles.GetAllRoles();
ListBox1.DataSource = rolesname;
ListBox1.DataBind();
}
}
//* Delete Role button
protected void btnDelete_Click(object sender, EventArgs e)
{
try
{
string rolename = ListBox1.SelectedItem.Value;
try
{
Roles.DeleteRole(rolename);
lblMsg.Text = "Role has been deleted";
}
catch (Exception ex)
{
lblMsg.Text = ex.Message;
}
}
catch (Exception ex)
{
}
RefreshListBox();
}
// Method
private void RefreshListBox()
{
ListBox1.SelectedIndex = -1;
string[] rolesname = Roles.GetAllRoles();
ListBox1.DataSource = rolesname;
ListBox1.DataBind();
//-- check if there is role
if (ListBox1.Items.Count == 0)
{
lblMsg.Text = "There is no role";
HyperLink1.Visible = true;
btnDelete.Visible = false;
ListBox1.Visible = false;
}
else
{
HyperLink1.Visible = false;
btnDelete.Visible = true;
ListBox1.Visible = true;
}
}
}