📄 roleitemcontrol.ascx.cs
字号:
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_RoleItemControl : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
object roleID = Request.QueryString["roleid"];
if (!IsPostBack)
{
if (roleID == null)
{
Common.RegisterAlertScript("请选择角色ID", "ManageRole.aspx", "ErrorID", this.Page);
return;
}
else
{
RoleEntity role = new RoleEntity();
RoleBussiness roleBuss = new RoleBussiness();
role.RoleID = Convert.ToInt32(roleID);
object roleName = roleBuss.GetRoleNameByRoleID(role.RoleID);
if (roleName == null)
{
Common.RegisterAlertScript("请选择角色ID", "ManageRole.aspx", "ErrorID", this.Page);
return;
}
else
{
lblRoleName.Text = roleName.ToString();
roleBuss.GetItemsByRoleID(ref role);
BindTree(role);
}
}
}
}
/// <summary>
/// 绑定栏目树
/// </summary>
/// <param name="role"></param>
private void BindTree(RoleEntity role)
{
ItemEntity item = new ItemEntity();
ItemBussiness itemBuss = new ItemBussiness();
DataTable dtRoot = itemBuss.GetRootItem();
DataTable dtSub = null;
for (int iCounter = 0; iCounter < dtRoot.Rows.Count; iCounter++)
{
string rootItemName = Convert.ToString(dtRoot.Rows[iCounter]["ItemName"]);
string rootItemID = Convert.ToString(dtRoot.Rows[iCounter]["ItemID"]);
TreeNode tn = new TreeNode(rootItemName, rootItemID);
//获取子栏目
dtSub = itemBuss.GetItemByParentID(Convert.ToInt32(dtRoot.Rows[iCounter]["ItemID"]));
if (role.RoleItemMap.Count != 0)//如果该栏目设置了权限
{
if (role.RoleItemMap.Contains(rootItemID))//若根栏目ID包含在该角色中
{
tn.Checked = true;
if (dtSub.Rows.Count != 0)
{
for (int iCounterII = 0; iCounterII < dtSub.Rows.Count; iCounterII++)
{
TreeNode subtn = new TreeNode(Convert.ToString(dtSub.Rows[iCounterII]["ItemName"]),
Convert.ToString(dtSub.Rows[iCounterII]["ItemID"]));
subtn.Checked = true;
tn.ChildNodes.Add(subtn);
}
}
}
else
{
if (dtSub.Rows.Count != 0)
{
for (int iCounterII = 0; iCounterII < dtSub.Rows.Count; iCounterII++)
{
string subItemID=Convert.ToString(dtSub.Rows[iCounterII]["ItemID"]);
TreeNode subtn = new TreeNode(Convert.ToString(dtSub.Rows[iCounterII]["ItemName"]),subItemID);
if (role.RoleItemMap.Contains(subItemID))
{
subtn.Checked = true;
}
tn.ChildNodes.Add(subtn);
}
}
}
}
else//否则
{
if (dtSub.Rows.Count != 0)
{
for (int iCounterII = 0; iCounterII < dtSub.Rows.Count; iCounterII++)
{
TreeNode subtn = new TreeNode(Convert.ToString(dtSub.Rows[iCounterII]["ItemName"]),
Convert.ToString(dtSub.Rows[iCounterII]["ItemID"]));
tn.ChildNodes.Add(subtn);
}
}
}
//TreeView1.Nodes.Add(tn);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -