📄 usermanage.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Business;
using Common;
namespace book07
{
/// <summary>
/// UserManage 的摘要说明。
/// </summary>
public class UserManage : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid dgUser;
#region Properties
/// <summary>
/// 当前登录用户名
/// </summary>
public string Username
{
get
{
if (HttpContext.Current.User.Identity.IsAuthenticated)
{
return HttpContext.Current.User.Identity.Name;
}
else
{
return "anonymous";
}
}
}
#endregion
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if (!IsPostBack)
{
BindGrid();
}
}
/// <summary>
/// 数据绑定
/// </summary>
private void BindGrid()
{
dgUser.DataSource = Forum.GetAllUsers(Username);
dgUser.DataBind();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.dgUser.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.dgUser_PageIndexChanged);
this.dgUser.CancelCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgUser_CancelCommand);
this.dgUser.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgUser_EditCommand);
this.dgUser.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.dgUser_UpdateCommand);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void dgUser_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
int index = e.Item.ItemIndex;
//进入编辑状态
dgUser.EditItemIndex = index;
BindGrid();
//动态加载下拉列表
DropDownList ddl = (DropDownList)(dgUser.Items[index].Cells[2].FindControl("ddlRoles"));
if (ddl != null)
{
ddl.DataSource = Forum.GetAllRoles(Username).Tables[0].DefaultView;
ddl.DataTextField = "name";
ddl.DataValueField = "id";
ddl.DataBind();
//默认选中现在的角色
string strUsername = ((DataSet)(dgUser.DataSource)).Tables[0].Rows[index]["rolename"].ToString();
for (int i = 0;i < ddl.Items.Count;i++)
{
if (strUsername == ddl.Items[i].Text)
{
ddl.SelectedIndex = i;
}
}
}
}
private void dgUser_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
dgUser.EditItemIndex = -1;
BindGrid();
}
private void dgUser_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)
{
dgUser.CurrentPageIndex = e.NewPageIndex;
BindGrid();
}
private void dgUser_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
int index = e.Item.ItemIndex;
//获取被修改的用户信息
User user = new User();
DropDownList ddl = (DropDownList)dgUser.Items[index].Cells[2].FindControl("ddlRoles");
user.username = Forum.GetAllUsers(Username).Tables[0].Rows[index + dgUser.PageCount * dgUser.CurrentPageIndex]["username"].ToString();
user.role_id = Convert.ToInt32(ddl.SelectedValue);
//修改用户角色
if (!Forum.ModifyUser(user, Username))
Response.Write("<script>alert('您没有权限修改该用户的角色');</script>");
dgUser.EditItemIndex = -1;
BindGrid();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -