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("连接错误");
            }
          
        }
    }
  • 相关阅读:
    伟景行 citymaker 从入门到精通(2)——工程图层树加载
    伟景行 citymaker 从入门到精通系列
    伟景行 citymaker 从入门到精通(1)——js开发,最基本demo,加载cep工程文件
    Android手机屏幕投射到电脑神器Vysor
    GeoTools坐标转换(投影转换和仿射变换)
    微信开发系列(1):企业号回调模式认证
    通过扩大IE使用内存,解决skyline在IE下模型不能加载的方法
    SDE ST_Geometry SQL st_intersects查询很慢的解决方法
    axTE3DWindowEx双屏对比控件白屏解决方法以及网上方法的校正(CreateControlOveride)
    namespace使用方法
  • 原文地址:https://www.cnblogs.com/wangyhua/p/4050687.html
Copyright © 2011-2022 走看看