关闭

TreeView递归法绑定树控件

1501人阅读 评论(0) 收藏 举报

下面是用递归法绑定到树控件的Demo:

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class Administrator_SetSubject : System.Web.UI.Page
{    
    
//public System.Web.UI.WebControls.TreeView TreeView1;
   
    DataTable dt;
    
protected void Page_Load(object sender, EventArgs e)
    
{
        
if (!IsPostBack)
        

            TreeViewOperate Obj 
= new TreeViewOperate();       //操作树类的对像。
            
            dt 
= new DataTable();
            dt 
= Obj.getTreeViewDataTable();           //得到数据表中所有的数据。getTreeViewDataTable方法略            CreateTree(TreeView1.Nodes, "0");       //调用方未予创建树,0为根目录的父节点,实际是不存在的         
        }
       
    }


    
/// <summary>
    
/// 递归法,填充树控件。
    
/// </summary>
    
/// <param name="TreeNode">父节点名</param>
    
/// <param name="printid">父节点ID</param>

    private void CreateTree(TreeNodeCollection TreeNode, string printid)
    
{
        DataView dv 
= new DataView(this.dt);
        dv.RowFilter 
= "ParentID='" + printid + "'";
        TreeNode nodeTemp;
        
foreach (DataRowView dv1 in dv)
        
{
            nodeTemp 
= new TreeNode();
            nodeTemp.Value 
= dv1["ID"].ToString();
            nodeTemp.Text  
= dv1["NodeName"].ToString();
            TreeNode.Add(nodeTemp);    
            
this.CreateTree(nodeTemp.ChildNodes, nodeTemp.Value);      //循环绑定树
        }

    }

}

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:22871次
    • 积分:385
    • 等级:
    • 排名:千里之外
    • 原创:14篇
    • 转载:0篇
    • 译文:0篇
    • 评论:8条
    文章分类
    最新评论