treeview動態綁定

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

namespace WebApplication1
{
    public partial class treeviewwanshan : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
           
            if (!IsPostBack)
            {

                DataTable dt = GetDatatable(0);
                foreach (DataRow row in dt.Rows)
                {
                    TreeNode node = new TreeNode();
                    node.Text = Convert.ToString(row["XzName"]);
                    node.Value = Convert.ToString(row["id"]);
                    node.PopulateOnDemand = true;
                    this.TreeView1.Nodes.Add(node);
                }
            }
        }
        private DataTable GetDatatable(int parentid)
        {
            string str = ConfigurationManager.ConnectionStrings["strcnn"].ConnectionString;
            using (SqlConnection sqlcnn = new SqlConnection(str))
            {
                using (SqlCommand sqlcmm = sqlcnn.CreateCommand())
                {
                    sqlcmm.CommandText = "select * from T_Xzqh where ParentBh= " + parentid;
                    DataTable  dt = new DataTable();
                    SqlDataAdapter sda = new SqlDataAdapter(sqlcmm);
                    sda.Fill(dt);
                    return dt;
                }
            }
            
        }

        protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
        {
            DataTable dt = GetDatatable(Convert.ToInt32(e.Node.Value));
            foreach (DataRow row in dt.Rows)
            {
                TreeNode node = new TreeNode();
                node.Text = Convert.ToString(row["XzName"]);
                node.Value = Convert.ToString(row["id"]);
                DataTable dt2 = GetDatatable(Convert.ToInt32(row["id"]));
                if (dt2.Rows.Count > 0)
                {
                    node.PopulateOnDemand = true;
                }
                e.Node.ChildNodes.Add(node);
            }          
        }
       

       
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章