ASP.NET2.0 TreeView的資料庫繫結
阿新 • • 發佈:2019-02-18
TreeView的資料繫結資源預設的有兩類:XML和SiteMap
這兩類資源的共同特點就是資原始檔是固定儲存在專案中的,這一類方便我們使用來做選單,所以TreeView歸類在導航控制元件中.這裡的繫結我不做詳細的敘述,VS2005中可以很方便的使用.
TreeView還有一種用法是用來顯示資料資訊及其資料資訊的層級資訊,這裡上面的兩類就不能滿足我們的需要,我們需要的是與資料庫資源連線,而形成動態的TreeView.同樣我們還可以在資料庫中使用樹的雙親表示法把樹描述出來,例如
ID | Name | ParentID |
1 | 1 | 0 |
2 | 2 | 0 |
3 | 3 | 0 |
4 | 4 | 1 |
5 | 5 | 1 |
6 | 6 | 2 |
7 | 7 | 2 |
8 | 8 | 3 |
9 | 9 | 7 |
使用這種的資料庫方法可以很方便的繫結到TreeView中,形成一個無限動態樹.(當然還有其他的資料庫的方法)
privatevoid InitTree(TreeNodeCollection Nds, string ParentId){
DataView dvroles =new DataView();
TreeNode tmpNd;
string strRID;
dvroles.Table = csa.CreateDataSet("DS1").Tables["T1
dvroles.RowFilter =" ParentID="+ ParentId;
foreach (DataRowView drvrole in dvroles)
{
strRID = drvrole["ID"].ToString();
tmpNd =new TreeNode();
tmpNd.Value = drvrole["ID"].ToString();
tmpNd.Text = drvrole["Name"].ToString();
tmpNd.Target = drvrole["ParenID"].ToString();
Nds.Add(tmpNd);
InitRoleTree(tmpNd.ChildNodes, strRID);
}
}
在這裡我們可以進行控制的樹的資訊有
Value | 節點的ID |
Text | 節點的顯示資訊 |
Target | 關聯網頁內容的目標視窗,如果沒有關聯網頁,也可以做一個數據容器 |
ToolTip | 節點文字提示工具 |
ImageUrl | 節點圖片 |
ImageToolTip | 節點圖片文字提示工具 |