zoukankan      html  css  js  c++  java
  • 动态绑定TreeVew

    动态绑定TreeVew

    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;

    public partial class _Default : System.Web.UI.Page
    {
        private DataView dv;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                GetData();
                BuilderTree(-1, (TreeNode)null);
            }     
        }

        private void GetData()
        {
            string sql = "select * from inventoryclass";
            DataSet ds = DBHelper.GetData(sql);
             dv = new DataView(ds.Tables[0]);
        }

        //树的绑定
        private void BuilderTree(int ParentID, TreeNode pNode)
        {
            TreeView1.ShowCheckBoxes = TreeNodeTypes.All;
            dv.RowFilter = "ParentID =" + ParentID;
            foreach (DataRowView row in dv)
            {
                TreeNode node = new TreeNode();
                if (pNode == null)
                {
                    //添加根节点 
                    node.Text = row["name"].ToString();
                    TreeView1.Nodes.Add(node);
                    node.Expanded = true;
                    BuilderTree(int.Parse(row["id"].ToString()), node); //递归 
                }
                else
                {
                    //添加当前节点的子节点 
                    node.Text = row["name"].ToString();
                    pNode.ChildNodes.Add(node);
                    node.Expanded = true;
                    BuilderTree(int.Parse(row["id"].ToString()), node); //递归 
                }
            }
        }
    }

     
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Data;
    using System.Data.SqlClient;
    /// <summary>
    ///DBHelper 的摘要说明
    /// </summary>
    public class DBHelper
    {
        public DBHelper()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //
        }
        public static DataSet GetData(string sql)
        {
            try
            {
                SqlConnection conn = new SqlConnection(@"server=(local);database=db_13;uid=sa;pwd=13875712605;");
               
                //SqlCommand cmd = new SqlCommand(sql,conn);
                conn.Open();
                SqlDataAdapter da = new SqlDataAdapter(sql,conn);
             
                DataSet ds = new DataSet();
                da.Fill(ds);
                conn.Close();
                return ds;
            }
           catch(Exception e)
            {
                throw new Exception("连接错误");
            }
          
        }
    }
  • 相关阅读:
    Android ActionBar应用实战,高仿微信主界面的设计
    Android ActionBar完全解析,使用官方推荐的最佳导航栏(下) .
    Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)
    actionBar兼容2.1及以上版本的做法 .
    Android UI开发详解之ActionBar .
    Android ActionBar详解(三):ActionBar实现切换Tabs标签
    Android ActionBar详解(二):ActionBar实现Tabs标签以及下拉导航 .
    完毕port(CompletionPort)具体解释
    Java的递归算法
    shell语法简单介绍
  • 原文地址:https://www.cnblogs.com/wangyhua/p/4050687.html
Copyright © 2011-2022 走看看