您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息
免费发信息

TREEVIEW数据库绑定

2024/4/20 5:43:08发布5次查看
数据库 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);
     }
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录