在页面上添加一个GridView控件和三个按钮,分别命名为UserView,AddBtn,viewBtn和deleteBtn
本页面的部分HTML设计代码如下:
<
head
runat
="server"
>
< title > 用户管理页面 </ title >
< link rel ="Stylesheet" type ="text/css" herf ="ASPNET2.0BaseCss.css" />
</ head >
< asp:GridView ID ="UserView" Width ="100%" runat ="server" AutoGenerateColumns ="False" BorderColor ="False" BorderWidth ="1px" BackColor ="White" CellPadding ="4" OnRowCommand ="UserView_RowCommand" OnRowDeleting ="UserView_RowDeleting" >
......
< Columns >
< asp:TemplateField HeaderText ="用户名称" >
< ItemTemplate >
< a href ='ViewUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '> <% ... #DataBinder.Eval(Container.DataItem,"UserName") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="电子邮件" >
< ItemTemplate >
< a href ='mailto:<%#DataBinder.Eval(Container.DataItem,"Email")% > '> <% ... #DataBinder.Eval(Container.DataItem,"Email") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="是否为管理员" >
< ItemTemplate >
< asp:CheckBox ID ="IsAdminCheck" Enabled ="false" runat ="server" Checked ='<%#DataBinder.Eval(Container.DataItem,"IsAdmin")% > '>
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="用户操作" >
< ItemTemplate >
< a href ='EditUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '>编辑 </ a > < a href ='EditPwd.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '>修改密码 </ a >
< asp:ImageButton ID ="DeleteBtn" runat ="server" CommandName ="delete" ImageUrl ="~/Images/delete.gif" AlternateText ="删除该用户" CommandArgument ='<%#DataBinder.Eval(Container.DataItem,"UserID")% > '/>
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="管理员设置" >
< ItemTemplate >
< asp:Button ID ="SetAdminBtn" CommandName ="admin" Width ="120" Text ='<%#(bool)DataBinder.Eval(Container.DataItem,"IsAdmin")==true?"取消管理员权限":"设为管理员"% > ' CssClass="ButtonCss" runat="server" CommandArgument=' <% ... #DataBinder.Eval(Container.DataItem,"UserID") %> '/>
< a href ='ViewUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '> <% ... #DataBinder.Eval(Container.DataItem,"UserName") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
</ Columns >
</ asp:GridView >
< asp:Button ID ="AddBtn" runat ="server" Text ="添加新用户" Width ="160" CssClass ="ButtonCss" OnClick ="AddBtn_Click" /></ td >
< title > 用户管理页面 </ title >
< link rel ="Stylesheet" type ="text/css" herf ="ASPNET2.0BaseCss.css" />
</ head >
< asp:GridView ID ="UserView" Width ="100%" runat ="server" AutoGenerateColumns ="False" BorderColor ="False" BorderWidth ="1px" BackColor ="White" CellPadding ="4" OnRowCommand ="UserView_RowCommand" OnRowDeleting ="UserView_RowDeleting" >
......
< Columns >
< asp:TemplateField HeaderText ="用户名称" >
< ItemTemplate >
< a href ='ViewUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '> <% ... #DataBinder.Eval(Container.DataItem,"UserName") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="电子邮件" >
< ItemTemplate >
< a href ='mailto:<%#DataBinder.Eval(Container.DataItem,"Email")% > '> <% ... #DataBinder.Eval(Container.DataItem,"Email") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="是否为管理员" >
< ItemTemplate >
< asp:CheckBox ID ="IsAdminCheck" Enabled ="false" runat ="server" Checked ='<%#DataBinder.Eval(Container.DataItem,"IsAdmin")% > '>
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="用户操作" >
< ItemTemplate >
< a href ='EditUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '>编辑 </ a > < a href ='EditPwd.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '>修改密码 </ a >
< asp:ImageButton ID ="DeleteBtn" runat ="server" CommandName ="delete" ImageUrl ="~/Images/delete.gif" AlternateText ="删除该用户" CommandArgument ='<%#DataBinder.Eval(Container.DataItem,"UserID")% > '/>
</ ItemTemplate >
</ asp:TemplateField >
< asp:TemplateField HeaderText ="管理员设置" >
< ItemTemplate >
< asp:Button ID ="SetAdminBtn" CommandName ="admin" Width ="120" Text ='<%#(bool)DataBinder.Eval(Container.DataItem,"IsAdmin")==true?"取消管理员权限":"设为管理员"% > ' CssClass="ButtonCss" runat="server" CommandArgument=' <% ... #DataBinder.Eval(Container.DataItem,"UserID") %> '/>
< a href ='ViewUser.aspx?UserID=<%#DataBinder.Eval(Container.DataItem,"UserID")% > '> <% ... #DataBinder.Eval(Container.DataItem,"UserName") %> </ a >
</ ItemTemplate >
</ asp:TemplateField >
</ Columns >
</ asp:GridView >
< asp:Button ID ="AddBtn" runat ="server" Text ="添加新用户" Width ="160" CssClass ="ButtonCss" OnClick ="AddBtn_Click" /></ td >
protected
void
Page_Load(
object
sender,EventArgs e)
... {
if(!Page.IsPostBack)...{BindUserData();}
//添加删除确认对话框
deleteBtn.Attributes.Add("onclick","returnconfirm('"+"你确认要删除你选择的数据吗?');");
}
private void BindUserData()
... {
IUser user=new User();
SqlDataReader dr=user.GetUsers();
UserView.DataSource=dr;
UserView.DataBind();
dr.Close();
}
... {
if(!Page.IsPostBack)...{BindUserData();}
//添加删除确认对话框
deleteBtn.Attributes.Add("onclick","returnconfirm('"+"你确认要删除你选择的数据吗?');");
}
private void BindUserData()
... {
IUser user=new User();
SqlDataReader dr=user.GetUsers();
UserView.DataSource=dr;
UserView.DataBind();
dr.Close();
}
//删除用户与设置修改管理员的权限
protected
void
UserView_RowCommand(
object
sender,GridViewCommandEventArgs e)
... {
string commmandName=e.CommandName;
int nUserID=-1;
if(Int32.TryParse(e.CommandArgument.ToString(),out nUserID)==false||commandName=="")
...{return;}
IUser user=new User();
switch(commandName)
...{
case "delete":
...{
user.DeleteUser(nUserID);
Response.Write("<script>alert('"+"删除用户成功,请检查数据库是否吻合!!!"+"');</script>");
BindUserData();
break;
}
case "admin"
...{
//管理员的权限设置
Button button=(Button)e.CommandSource;
if(button==null)...{break;}
user.UpdateUserAdmin(nUserID,button.Text=="取消管理员权限"?false:ture);
Response.Write("<script>alert('"+"设置管理员权限成功,请检查数据库是否吻合!!!"+"');</script>");
BindUserData();
break;
}
default:break;
}
}
... {
string commmandName=e.CommandName;
int nUserID=-1;
if(Int32.TryParse(e.CommandArgument.ToString(),out nUserID)==false||commandName=="")
...{return;}
IUser user=new User();
switch(commandName)
...{
case "delete":
...{
user.DeleteUser(nUserID);
Response.Write("<script>alert('"+"删除用户成功,请检查数据库是否吻合!!!"+"');</script>");
BindUserData();
break;
}
case "admin"
...{
//管理员的权限设置
Button button=(Button)e.CommandSource;
if(button==null)...{break;}
user.UpdateUserAdmin(nUserID,button.Text=="取消管理员权限"?false:ture);
Response.Write("<script>alert('"+"设置管理员权限成功,请检查数据库是否吻合!!!"+"');</script>");
BindUserData();
break;
}
default:break;
}
}