Heim  >  Artikel  >  Datenbank  >  TREEVIEW数据库绑定

TREEVIEW数据库绑定

WBOY
WBOYOriginal
2016-06-07 15:35:181359Durchsuche

数据库 create database TreeView go use Treeview create table node1 ( nd1id int primary key, nd1name varchar(32) ) create table node2 ( nd2id int primary key, nd1id int, nd2name varchar(32) ) create table node3 ( nd3id int primary key, nd2i

数据库
create database TreeView
go
use Treeview


create table node1
(
nd1id int primary key,
nd1name varchar(32)
)

create table node2
(
nd2id int primary key,
nd1id int,
nd2name varchar(32)
)

create table node3
(
nd3id int primary key,
nd2id int,
nd3name varchar(32)
)


insert node1 values(0,'node1_1')
insert node1 values(1,'node1_2')
insert node1 values(2,'node1_3')
insert node1 values(3,'node1_4')
insert node2 values(0,0,'node2_1')
insert node2 values(1,0,'node2_2')
insert node2 values(2,1,'node2_3')
insert node2 values(3,1,'node2_4')
insert node2 values(4,2,'node2_5')
insert node2 values(5,3,'node2_6')
insert node2 values(6,2,'node2_7')

insert node3 values(0,0,'node3_1')
insert node3 values(1,0,'node3_2')
insert node3 values(2,1,'node3_3')
insert node3 values(3,2,'node3_4')
insert node3 values(4,1,'node3_5')
insert node3 values(5,3,'node3_6')
insert node3 values(6,5,'node3_7')
insert node3 values(7,6,'node3_8')
insert node3 values(8,3,'node3_9')
insert node3 values(9,4,'node3_10')
insert node3 values(10,5,'node3_11')

VS代码

void PopulateCategories(TreeNode node)
     {
         string sql = "Select nd1name, nd1id From node1";
         DataSet resultSet;
         resultSet = Getdataset(sql, null);
         if (resultSet.Tables.Count > 0)
         {
             foreach (DataRow row in resultSet.Tables[0].Rows)
             {
                 TreeNode NewNode = new TreeNode(row["nd1name"].ToString(), row["nd1id"].ToString());
                 NewNode.PopulateOnDemand = true;
                 NewNode.SelectAction = TreeNodeSelectAction.Expand;
                 node.ChildNodes.Add(NewNode);
             }
         }
     }

     void PopulateProducts(TreeNode node)
     {

         string sql = "Select nd2name,nd2id From node2 " + " Where nd1id = @id";
         SqlParameter para = new SqlParameter("@id", SqlDbType.Int);
         para.Value = node.Value;
         //sqlQuery.Parameters.Add("@id", SqlDbType.Int).Value = node.Value;
         DataSet ResultSet = Getdataset(sql, para);
         if (ResultSet.Tables.Count > 0)
         {
             foreach (DataRow row in ResultSet.Tables[0].Rows)
             {
                 TreeNode NewNode = new TreeNode(row["nd2name"].ToString(), row["nd2id"].ToString());
                 NewNode.PopulateOnDemand = true;
                 NewNode.SelectAction = TreeNodeSelectAction.Expand;
                 node.ChildNodes.Add(NewNode);
             }
         }
     }


     void PopulateProducts1(TreeNode node)
     {

         string sql = "Select nd3name,nd3id From node3 " + " Where nd2id = @id";
         SqlParameter para = new SqlParameter("@id", SqlDbType.Int);
         para.Value = node.Value;
         //sqlQuery.Parameters.Add("@id", SqlDbType.Int).Value = node.Value;
         DataSet ResultSet = Getdataset(sql, para);
         if (ResultSet.Tables.Count > 0)
         {
             foreach (DataRow row in ResultSet.Tables[0].Rows)
             {
                 TreeNode NewNode = new TreeNode(row["nd3name"].ToString(), row["nd3id"].ToString());
                 NewNode.PopulateOnDemand = false;
                 NewNode.SelectAction = TreeNodeSelectAction.SelectExpand;
                 node.ChildNodes.Add(NewNode);
             }
         }
     }

     private DataSet Getdataset(string sql,SqlParameter paralist)
     {
         string strconn = "database=treeview;server=.;Integrated Security=SSPI";
         SqlConnection conn = new SqlConnection(strconn);
         SqlCommand cmd = new SqlCommand();
         if (paralist != null)
         {

             cmd.Parameters.Add(paralist);
            
         }
         cmd.CommandText = sql;
         cmd.Connection = conn;
         SqlDataAdapter da = new SqlDataAdapter(cmd);
         DataSet ds = new DataSet();
         da.Fill(ds);
         return ds;
     }

     protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
     {
         if (e.Node.ChildNodes.Count == 0)
         {
             switch (e.Node.Depth)
             {
                 case 0:
                     PopulateCategories(e.Node);
                     break;
                 case 1:
                     PopulateProducts(e.Node);
                     break;
                 case 2:
                     PopulateProducts1(e.Node);
                     break;
                
                  
             }
         }
     }


     protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
     {
         Response.Write("adfdf");

     }
     protected void TreeView1_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
     {
         //Response.Write("adfdf");
     }

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn