zoukankan      html  css  js  c++  java
  • 递归绑定树形菜单

    根据Datatable绑定TreeView:

    代码
            public void BindTreeVew(TreeView treeView, bool isExpanded, string selected) 
    {
    //将获取的数据转换为 一个DataTable
    DataTable dt = GetDataTable();
    treeView.Nodes.Clear();
    //清空 树的所有节点
    //筛选数组
    DataRow[] rowlist = dt.Select("ParentId='0'");
    if (rowlist.Length <= 0) return;
    //创建跟节点
    TreeNode rootNode = new TreeNode();
    rootNode.Text
    = rowlist[0]["Text"].ToString();
    rootNode.Value
    = rowlist[0]["NodeId"].ToString();
    rootNode.Expanded
    = isExpanded;
    rootNode.Selected
    = true;
    //添加跟节点
    treeView.Nodes.Add(rootNode);
    CreateChildNode(rootNode, dt, isExpanded, seleced);
    }
    private void CreateChildNode(TreeNode parentNode, DataTable dt, bool isExpanded, string seleced)
    {
    //选择数据
    DataRow[] rowList = dt.Select("ParentId=" + Convert.ToInt32(parentNode.Value));
    foreach (DataRow row in rowList)
    {
    //创建一个新的节点了
    TreeNode node = new TreeNode();
    node.Text
    = row["Text"].ToString();
    node.Value
    = row["NodeId"].ToString();
    node.NavigateUrl
    =row["Url"].ToString();
    node.Expanded
    = isExpanded;
    if (node.Value == seleced)
    {
    node.Selected
    = true;
    }
    parentNode.ChildNodes.Add(node);
    //递归调用,创建其他节点
    CreateChildNode(node, dt, isExpanded, seleced);
    }
    }

    出处: http://www.cnblogs.com/windy2008

  • 相关阅读:
    git命令小汇总和github
    有关版本控制--SVN
    ng-做一个简单的通讯录--学习使用路由和HTTP
    ng-辅助操作
    ng-router
    ng-http
    ng-指令
    ng-组件
    ng-核心特性(模型概念)
    ng--tolist说明
  • 原文地址:https://www.cnblogs.com/windy2008/p/1854288.html
Copyright © 2011-2022 走看看