📄 sys_adminmenu.aspx.cs
字号:
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Xml ;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Microsoft.Web.UI.WebControls ;
using COAdmin.COMMON ;
using COAdmin.BLL ;
namespace COAdmin.USL
{
/// <summary>
/// Menu 的摘要说明。
/// </summary>
public class Sys_AdminMenu : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Label Label1;
protected Microsoft.Web.UI.WebControls.TreeView tv;
Usr usr = null ;
private void Page_Load(object sender, System.EventArgs e)
{
// 如果登录用户为空,页面重定向到登录页面
usr = COAdminGlobals.LoginUsr ;
if(usr == null)
{
//页面重定向到登录页面
string url="Login.aspx" ;
Page.Response.Redirect(url) ;
return ;
}
if ( !IsPostBack )
{
//创建菜单
CreateMenu();
}
}
/// <summary>
/// 创建菜单
/// </summary>
private void CreateMenu()
{
//实例一个XML文档对象
XmlDocument xDoc=new XmlDocument();
//调用通用方法从配置文件中获取定义菜单的XML文的路径
string path=COAdminGlobals.ConfigFilePath + "menu.xml";
try
{
//从取得的路径加载XML文档
xDoc.Load(path);
//获取XML文档的根节点
XmlNode root=xDoc.DocumentElement;
if (root!=null)
{
//获取XML文档根节点下的一级菜单
XmlNodeList xnl=root.SelectNodes("main");
if (xnl!=null)
{
for(int i=0;i<xnl.Count;i++)
{
//获取当前XML文档节点及其属性
XmlNode xn=xnl[i];
XmlAttributeCollection acl=xn.Attributes;
//为树创建新的节点
TreeNode tn=new TreeNode();
this.tv.Nodes.Add(tn);
//将新节点的属性设置为XML文档节点的属性
tn.ID=acl["text"].Value;
tn.Text=acl["text"].Value;
//注意NodeData中保存的是菜单关联的页面URL
tn.NodeData=acl["id"].Value;
tn.Expanded = true ;
//获取XML文档的下一级节点
XmlNodeList sl=xn.SelectNodes("sub");
if (sl!=null)
{
for(int j=0;j<sl.Count;j++)
{
XmlNode x=sl[j];
XmlAttributeCollection al=x.Attributes;
//为树创建下一级节点
TreeNode stn=new TreeNode();
tn.Nodes.Add(stn);
//将新节点的属性设置为XML文档节点的属性
stn.ID=al["text"].Value;
stn.Text=al["text"].Value;
//注意NodeData中保存的是菜单关联的页面URL
stn.NodeData=al["id"].Value;
}
}
}
}
}
}
catch{}
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -