asp.net TreeView与XML三步生成列表树

(编辑:jimmy 日期: 2025/9/20 浏览:2)

刚我在做Tree view 绑定时自己摸索了一下,网上有人说TreeView绑定数据源,用什么递归绑定啥的,我不想看了,就自己试着写了一个
我是这样做的,如果有什么问题请大神指导,我是菜鸟额..
1:页面TreeView 叫tvFunction
2:新建 adminFunction.xml
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8" ?>
<functions>
  <function name="商品发布" url="~/page/leaves/leave.aspx">
    <subfunction name="添加商品" url="~/page/leaves/leave.aspx">
    </subfunction>
    <subfunction name="添加商品" url="~/page/leaves/leave.aspx">
    </subfunction>
  </function>
  <function name="留言发布" url="~/page/leaves/leave.aspx">
    <subfunction name="添加留言" url="~/page/leaves/leave.aspx">
    </subfunction>
    <subfunction name="修改留言" url="~/page/leaves/leave.aspx">
    </subfunction>
  </function>
</functions>

3:页面绑定
复制代码 代码如下:
/// <summary>
        /// 初始化功能树结构
        /// </summary>
        private void InitFunction()
        {
            XmlDocument xmldoc = new XmlDocument();
            string xmlPath = "~/adminFunction.xml";
            xmlPath = Server.MapPath(xmlPath);
            xmldoc.Load(xmlPath);
            XmlNode root = xmldoc.DocumentElement;

            foreach (XmlNode node in root.ChildNodes)
            {
                //获取父节点的信息显示(轻狂-书生)
                XmlElement x1 = node as XmlElement;
                string name = x1.GetAttribute("name");
                string url = x1.GetAttribute("url");
                TreeNode tn = new TreeNode();
                tn.Text = name;
                tn.NavigateUrl = url;
                foreach (XmlNode subnode in x1.ChildNodes)
                {
                    XmlElement subxmlEmt = subnode as XmlElement;
                    string subname = subxmlEmt.GetAttribute("name");
                    string suburl = subxmlEmt.GetAttribute("url");
                    TreeNode subtn = new TreeNode();
                    subtn.Text = subname;
                    subtn.NavigateUrl = suburl;
                    tn.ChildNodes.Add(subtn);


                }
                tvFunction.Nodes.Add(tn);

            }
        }

4:显示效果
asp.net TreeView与XML三步生成列表树

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。