zoukankan      html  css  js  c++  java
  • 绑定无限级的树形菜单TreeView

    绑定无限级的树形菜单,在前台需要的地方拖放一个TreeView控件,后台绑定代码如下:
    using System;
    using System.Collections;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;

    public partial class InfinitTree : System.Web.UI.Page
    {
        
    string sql = null;
        
    protected void Page_Load(object sender, EventArgs e)
        {
            
    if (!IsPostBack)
            {
                BindTVInfinite();
            }
        }
        
    void BindTVInfinite()
        {
            sql 
    = "select * from treeTable where parentID=0";
            DataTable dt 
    = DataBase.ExecuteDataSet(sql).Tables[0];
            
    foreach (DataRow dr in dt.Rows)
            {
                TreeNode node 
    = new TreeNode();
                node.Text 
    = dr["treeName"].ToString();
                node.Value 
    = dr["treeID"].ToString();
                
    //bind child nodes
                BindNodes(int.Parse(dr["treeID"].ToString()), node);
                TVInfinite.Nodes.Add(node);
            }
        }
        
    void BindNodes(int parentID,TreeNode node)
        {
            sql 
    = string.Format("select * from treeTable where parentID={0}",parentID);
            DataTable dt 
    = DataBase.ExecuteDataSet(sql).Tables[0];
            
    foreach (DataRow rows in dt.Rows)
            {
                TreeNode tnode 
    = new TreeNode();
                tnode.Text 
    = rows["treeName"].ToString();
                tnode.Value 
    = rows["treeID"].ToString();
                node.ChildNodes.Add(tnode);
                BindNodes(
    int.Parse(rows["treeID"].ToString()), tnode);
            }
        }
    }


  • 相关阅读:
    Logback的配置说明
    BAT批处理修改MSDOS窗口标题、大小、字体及背景颜色
    Java修饰符public,private,protected及默认的区别
    Class loading problem regarding ear's lib directory
    MySQL开发规范
    学习如何用自己的 appender 来扩展 log4j 框架
    指令重排、内存屏障概念解析
    高性能线程间队列 DISRUPTOR 简介
    Log4j2的性能为什么这么好?
    java多线程
  • 原文地址:https://www.cnblogs.com/lotuslove/p/1705214.html
Copyright © 2011-2022 走看看