treeview控制元件要求繫結到xml資料來源上,所以必須設法把資料庫中的記憶體轉成xml檔案,然後再進行繫結。
首先,在網頁中新增一個xmldatasource:
和一個treeview控制元件:
然後在page_load事件中新增以下程式碼:
//連線資料庫
sqlconnectionconn=newsqlconnection("連線字串");
sqlcommandcmd=newsqlcommand("select*from資料表",conn);
conn.open();
sqldatareaderreader=cmd.executereader();
//新建xml文件
xmldocumentdoc=newxmldocument();
xmlelementroot;
xmlelementelement;
//插入xml宣告
xmldeclarationdec=doc.createxmldeclaration("1.0",null,"yes");
doc.insertbefore(dec,doc.documentelement);
//用來記錄根節點元素
arraylistelements=newarraylist();
//插入第一個節點
reader.read();
element=doc.createelement((string)reader["name"]);
elements.add(element);
doc.insertafter(element,dec);
//插入後面的子節點
while(reader.read())
{
//建立子節點
//找到它的父節點,然後新增到父節點下
root=(xmlelement)elements[(int)reader["parent"]-1];
root.appendchild(element);
}
//儲存xml檔案
filestreamfs=newfilestream(@"d:\temp\names.xml",filemode.create);
doc.save(fs);
fs.close();
//設定xml資料來源控制元件並把它繫結到treeview控制元件上
xmldatasource1.datafile=@"d:\temp\names.xml";
treeview1.datasource=xmldatasource1;
treeview1.databind();
這樣treeview1就綁定了一個從資料庫中讀出的樹結構,並在網頁中顯示出來。
再說明一下,treeview是不可能繫結到一個關係資料庫表的資料來源上的,只能繫結到xml資料來源或sitemapdatasource。
treeview控制元件要求繫結到xml資料來源上,所以必須設法把資料庫中的記憶體轉成xml檔案,然後再進行繫結。
首先,在網頁中新增一個xmldatasource:
和一個treeview控制元件:
然後在page_load事件中新增以下程式碼:
//連線資料庫
sqlconnectionconn=newsqlconnection("連線字串");
sqlcommandcmd=newsqlcommand("select*from資料表",conn);
conn.open();
sqldatareaderreader=cmd.executereader();
//新建xml文件
xmldocumentdoc=newxmldocument();
xmlelementroot;
xmlelementelement;
//插入xml宣告
xmldeclarationdec=doc.createxmldeclaration("1.0",null,"yes");
doc.insertbefore(dec,doc.documentelement);
//用來記錄根節點元素
arraylistelements=newarraylist();
//插入第一個節點
reader.read();
element=doc.createelement((string)reader["name"]);
elements.add(element);
doc.insertafter(element,dec);
//插入後面的子節點
while(reader.read())
{
//建立子節點
element=doc.createelement((string)reader["name"]);
elements.add(element);
//找到它的父節點,然後新增到父節點下
root=(xmlelement)elements[(int)reader["parent"]-1];
root.appendchild(element);
}
//儲存xml檔案
filestreamfs=newfilestream(@"d:\temp\names.xml",filemode.create);
doc.save(fs);
fs.close();
//設定xml資料來源控制元件並把它繫結到treeview控制元件上
xmldatasource1.datafile=@"d:\temp\names.xml";
treeview1.datasource=xmldatasource1;
treeview1.databind();
這樣treeview1就綁定了一個從資料庫中讀出的樹結構,並在網頁中顯示出來。
再說明一下,treeview是不可能繫結到一個關係資料庫表的資料來源上的,只能繫結到xml資料來源或sitemapdatasource。