• 递归绑定树形菜单


    根据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

  • 相关阅读:
    把工作当恋人-第一天
    python入门脚本练习之列表list
    python之sqlite安装
    pycharm 中提示:this license **** has been cancelled
    使用python计算圆的面积
    python中随机生成数
    python中的paramiko模块
    linux下的python如何使用tab键补全
    centos6.5安装python
    mysql常用命令
  • 原文地址:https://www.cnblogs.com/windy2008/p/1854288.html
Copyright © 2020-2023  润新知