index.aspx页
tree.aspx页
/asp:TreeView
tree.aspx.cs
protected void Page_Load(object sender, EventArgs e)
{
string path = @"e:\s2\tree.xml";
if (!IsPostBack)
{
InitialTreeView(this.TreeView1.Nodes, path);
}
}
private void InitialTreeView(TreeNodeCollection nodes, string fileName)
{
try
{
XmlDocument doc = new XmlDocument();
doc.Load(fileName);
TreeNode parentNode = new TreeNode();
// parentNode.Text = doc.DocumentElement.Name; 虽热获得了根节点但并不显示
foreach (XmlNode node in doc.DocumentElement.ChildNodes)
{
XmlElement xe = node as XmlElement;
TreeNode newNode = new TreeNode();
foreach (XmlAttribute attr in xe.Attributes)
{
//newNode.Text = attr.Value;
newNode.Text = xe.Attributes[0].Value;//在treeview控件中显示找到的xml元素节点的第一个属性Attributes[0]
newNode.NavigateUrl = xe.Attributes[1].Value;
//添加导航
}
//调用递归函数
SearchXmlDoc(node, newNode);
//添加子节点
//parentNode.ChildNodes.Add(newNode);
//将二级节点作为根节点添加到treeview控件中去
TreeView1.Nodes.Add(newNode);
}
nodes.Add(parentNode);
}
catch (Exception ex)
{
Response.Write(ex.ToString());
}
}
/// 递归遍历xml,为treeview绑定数据
private static void SearchXmlDoc(XmlNode xmlNode, TreeNode treeNode)
{
if (xmlNode.ChildNodes.Count == 0)
{
return;
}
else
{
foreach (XmlNode node in xmlNode.ChildNodes)
{
try
{
if (node.NodeType == XmlNodeType.Element)
{
//string value = node.InnerText;显示xml中<>之中的内容<>
string value = node.Attributes[0].Value;
TreeNode newNode = new TreeNode();
newNode.Text = value;
newNode.NavigateUrl = node.Attributes[1].Value;
newNode.SelectAction = TreeNodeSelectAction.Select;
newNode.Target=node.Attributes[2].Value;
SearchXmlDoc(node, newNode);
treeNode.ChildNodes.Add(newNode);
}
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
}
}
}
tree.xml
<?xml version="1.0" encoding="utf-8" ?>
<TreeNode Text="报修管理" NavigateUrl="" Target="mainframe">
<TreeNode Text="查看报修申请" NavigateUrl="Default2.aspx" Target="mainframe"/>
<TreeNode Text="审批报修" NavigateUrl="Default2.aspx" Target="mainframe"/>
<TreeNode Text="学科带头人管理" NavigateUrl="emputy.aspx" Target="mainframe"/>
</TreeNode>
<TreeNode Text="个人工作安排" NavigateUrl="" Target="mainframe">
<TreeNode Text="查看工作安排" NavigateUrl="Default2.aspx" Target="mainframe"/>
<TreeNode Text="添加工作日程" NavigateUrl="kxyjmanage.aspx" Target="mainframe"/>
<TreeNode Text="修改工作日程" NavigateUrl="yjfxmanange.aspx" Target="mainframe"/>
<TreeNode Text="删除工作日程" NavigateUrl="hdzzyjxmanage.aspx" Target="mainframe"/>
<TreeNode Text="查看公文" NavigateUrl="topmenu.aspx" Target="mainframe"/>
<TreeNode Text="发送公文" NavigateUrl="childmenu.aspx" Target="mainframe"/>
<TreeNode Text="资源中心管理" NavigateUrl="childmenu.aspx" Target="mainframe"/>
<TreeNode Text="用户管理" NavigateUrl="" Target="mainframe">
<TreeNode Text="用户管理" NavigateUrl="usermanage.aspx"/>
<TreeNode Text="用户权限" NavigateUrl="powermanage.aspx"/>
<TreeNode Text="密码修改" NavigateUrl="modpass.aspx"/>
</TreeNode>
<TreeNode Text="注销" NavigateUrl="Sessionvalidate.aspx"/>
<TreeNode Text="退出" NavigateUrl="exit.aspx"/>
就是不能在mainframe框架中加载,小弟初学忘高手指点一二,希望能帮我改改。