📄 personalpagemodule.ascx.cs
字号:
namespace com.sungoal.MemberManage.Web
{
using System;
using System.Data;
using System.Drawing;
using System.Web;
using System.Xml;
using System.Xml.XPath;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using Microsoft.Web.UI.WebControls;
/// <summary>
/// Summary description for PersonalPage.
/// </summary>
public class PersonalPageModule : ModuleBase
{
protected Microsoft.Web.UI.WebControls.TreeView tvItems;
private string cfgFile;
private const string XNODE_NAME="NodeName";
private const string XNODE_TYPE="NodeType";
private const string XNODE_TEXT="NodeText";
private const string XNODE_VALUE="ItemValue";
//节点图标
private const string FOPEN_IMG="Images/TreeImg/fopen.gif";
private const string FCLOSE_IMG="Images/TreeImg/fclosed.gif";
private const string ITEM_IMG="Images/TreeImg/item.gif";
private void Page_Load(object sender, System.EventArgs e)
{
cfgFile=Server.MapPath("ConfigFile/PersonalPage.xml");
if (!Page.IsPostBack)
LoadXmlData();
}
/// <summary>
/// 从xml中读去数据,并构造树
/// </summary>
protected void LoadXmlData()
{
tvItems.Nodes.Clear();
//根结点
TreeNode tNode=new TreeNode();
XmlDocument xmlDoc=new XmlDocument();
xmlDoc.Load(cfgFile);
XmlNode xmlNode=xmlDoc.DocumentElement;
try
{
if(xmlNode!=null&&xmlNode.NodeType==XmlNodeType.Element)
{
//设置节点信息
tNode.ID =xmlNode.Attributes[XNODE_NAME].Value;
tNode.Text =xmlNode.Attributes[XNODE_TEXT].Value;
//tNode.Type =xmlNode.Attributes[XNODE_TYPE].Value;
//tNode.NodeData =xmlNode.Attributes[XNODE_VALUE].Value;
//设置图标
SetTreeNodeImg(tNode);
tvItems.Nodes.Add(tNode);
//递归插入节点
InitialTree(xmlNode,tvItems.Nodes[0]);
}
}
catch(Exception ex)
{
JScriptSet.MessageBox(Response,ex.Message);
}
GetTreeNodeInfo("0");
}
/// <summary>
/// 递归插入树节点
/// </summary>
/// <param name="xNode">要加入的xml节点</param>
/// <param name="tNode">要加入树节点的父节点</param>
protected void InitialTree(XmlNode xmlNode,TreeNode treeNode)
{
XmlNode xNode;
TreeNode tNode;
XmlNodeList xnodeList;
int i,j;
if(xmlNode!=null&&xmlNode.NodeType==XmlNodeType.Element)
{
if (xmlNode.HasChildNodes)
{
xnodeList = xmlNode.ChildNodes;
if (xnodeList!=null)
{
for(i = 0,j=0; i< xnodeList.Count; i++)
{
xNode = xmlNode.ChildNodes[i];
if(xNode!=null&&xNode.NodeType==XmlNodeType.Element)
{
tNode =new TreeNode();
//设置节点信息
tNode.ID =xNode.Attributes[XNODE_NAME].Value;
tNode.Text =xNode.Attributes[XNODE_TEXT].Value;
tNode.Type =xNode.Attributes[XNODE_TYPE].Value;
if(tNode.Type=="Leaf")
tNode.NodeData =xNode.Attributes[XNODE_VALUE].Value;
//设置图标
SetTreeNodeImg(tNode);
treeNode.Nodes.Add(tNode);
InitialTree(xNode, treeNode.Nodes[j]);
j++;
}
}
}
}
}
}
/// <summary>
/// 设置树节点的图标
/// </summary>
/// <param name="?">树节点</param>
protected void SetTreeNodeImg(TreeNode tNode)
{
if(tNode.Type=="Leaf")
{
tNode.ImageUrl=ITEM_IMG;
}
else
{
tNode.ImageUrl=FCLOSE_IMG;
tNode.ExpandedImageUrl=FOPEN_IMG;
}
}
/// <summary>
/// 根据节点的索引得到节点信息
/// </summary>
/// <param name="nodeIndex"></param>
protected void GetTreeNodeInfo(string nodeIndex)
{
TreeNode tNode=tvItems.GetNodeFromIndex(nodeIndex);
//左键单击选中节点主题信息
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -