protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                bindTree();
            }
        }
        private void bindTree()
        {
            ALIYUN_PIC.BLL.Folder_oper_BLL bll = new Folder_oper_BLL();
            
            DataTable dt = bll.PIC_Bind();//得到需要的datatable
            this.FillNode(dt, null);
        }
        private void FillNode(DataTable dt, TreeNode node)
        {
            DataView dv = new DataView(dt);
            if (node == null)    //根结点
            {
                dv.RowFilter = "PARENT_NODE='0'";  //筛选到根结点的所有子节点
            }
            else  //不是根结点
            {
                dv.RowFilter = "PARENT_NODE='" + node.Value + "'";   //筛选对应节点的所有子节点
            }
            foreach (DataRowView drv in dv)   //遍历填充节点的所有子节点,如果传入的节点node为叶子节点,遍历要退出,不再进行递归
            {
                TreeNode no = new TreeNode(drv["NODE_NAME"].ToString(), drv["id"].ToString());
                FillNode(dt, no);  //填充no节点的子节点
                if (node == null)
                {                  
                    this.PIC_TREE.Nodes.Add(no);
                }
                else
                {
                    node.ChildNodes.Add(no);
                }
            }
        }

C# treeview绑定的更多相关文章

  1. winform treeview 绑定文件夹和文件

    转载:http://www.cnblogs.com/zhbsh/archive/2011/05/26/2057733.html #region treeview 绑定文件夹和文件 /// <su ...

  2. winform treeview绑定数据 DOM操作

    form1 public void treeView() { // datatable 定义变量接收 传归来的值 DataTable Father = new BuMenDA().ConSql(); ...

  3. WPF TreeView绑定字典集合

    <TreeView Name="Tree" HorizontalAlignment="Left" Height="269" Width ...

  4. WPF:TreeView绑定

    namespace PostViewer { using System.Collections.ObjectModel; using System.ComponentModel; /// <su ...

  5. WPF TreeView绑定xaml的写法

    方法一 <Window x:Class="TreeViewDemo.MainWindow" xmlns="http://schemas.microsoft.com/ ...

  6. C# treeview 绑定数据 【转】

    private void bindTreeView1() { string sql = "select * from dm_category"; DataTable dt = db ...

  7. TreeView绑定无限层级关系类

    protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Bind_TV(TreeView1.Nodes); ...

  8. C# 中的treeview绑定数据库(递归算法)

    近日面试的给我两道题目,一道是IQ测试,第二个就是题目所言 总共两个表 department(id int not null primary key,parentid int,name char(50 ...

  9. TreeView绑定

    )             {                 return;             }             foreach (NodeInfo info in list)    ...

随机推荐

  1. 让html页面不缓存js的实现方法

    很多朋友都会碰到这样的情况:如果我们页面加载了js的话下次打开时也会是调用这个js缓存文件,但对于我们调试时是非常的不方便了,本文就来谈论如何解决这一问题,下面一起来看看. 不缓存JS的方法其实挺简单 ...

  2. GRpc-Proto3语法

        syntax = "proto3"; 文件的第一行指定了你使用的是proto3的语法:如果你不指定,protocol buffer 编译器就会认为你使用的是proto2的语 ...

  3. scp 命令简明介绍

    安全复制(英语:Secure copy,缩写SCP)是指在本地主机与远程主机或者两台远程主机之间基于Secure Shell(SSH)协议安全地传输电脑文件."SCP"通常指安全复 ...

  4. js禁止

    很多时候需要用到js禁止相关的代码: function prohibit() { // 禁止右键 $(document).ready(function() { $(document).bind(&qu ...

  5. Book 动态规划

    虽然之前学过一点点,但是还是不会------现在好好跟着白书1.4节学一下—————— (1)数字三角形 d(i,j) = max(d(i+1,j),d(i+1,j+1)) + a[i][j] hdu ...

  6. HDU 3068 最长回文( Manacher模板题 )

    链接:传送门 思路:Manacher模板题,寻找串中的最长回文子串 /***************************************************************** ...

  7. STM32 Cubemx 配置定时器定时1mS

    最近才发现原来我把定时器里的配置参数代表的意义给搞混了,这里记录一下,防止以后自己忘记. 以建立一个定时1mS定时器为例: 1.先打开定时器 2.配置好时钟 3.配置定时器设置 重点来了,以前在这里我 ...

  8. Mysql学习总结(31)——MySql使用建议,尽量避免这些问题

    做服务器端开发的同学们,相信对于mysql应该是十分熟悉,但是一旦真正出现问题,你是否能够快速的发现问题的起因,并且解决呢?一旦问题涉及到数据库层面,往往不是那么好解决的,通常来说,我们需要提前做应对 ...

  9. 洛谷 P3079 [USACO13MAR]农场的画Farm Painting

    P3079 [USACO13MAR]农场的画Farm Painting 题目描述 After several harsh winters, Farmer John has decided it is ...

  10. CSS学习(五)

    导航栏 熟练使用导航栏,对于任何网站都非常重要. 使用CSS你可以转换成好看的导航栏而不是枯燥的HTML菜单. 导航栏=链接列表 作为标准的HTML基础一个导航栏是必须的.在我们的例子中我们将建立一个 ...