回博友關於treeview綁定的問題,剛好以前做過一個,就拿出代碼share一下。
問題地址:http://www.cnblogs.com/ninetynine/archive/2007/08/08/847847.html
環境:我的是一個產品表,目錄和產品都在一個表裡,有一個欄位來表示是產品還是目錄。
代碼如下:
PageLoad部分:protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string sql = "select id,name,parentid from [product] where isproduct='0' and id<>0";
dt = SqlHelper.ExecuteDataset(sql).Tables[0];
InitTreeAll();
}
}
實際構建treeview方法: 1private void InitTreeAll()
2 {
3 TreeNode tmpNd;
4 DataRow[] rows = dt.Select("ParentID=" + "0 and id<>0");
5 foreach (DataRow dr in rows)
6 {
7 tmpNd = new TreeNode(dr["name"].ToString(), dr["id"].ToString());
8 Product_tree.Nodes.Add(tmpNd);
9 tmpNd.Expanded = true;
10 DataRow[] rowss = dt.Select("parentid = " + dr["id"].ToString());
11 foreach (DataRow drr in rowss)
12 {
13 tmpNd.ChildNodes.Add(new TreeNode(drr["name"].ToString(), drr["id"].ToString(),"","UI/productlist.aspx?id="+drr["id"].ToString(),"_blank"));
14 tmpNd.Expanded = true;
15 }
16 }
17 Product_tree.ExpandAll();
18 }
實際綁定效果請參看:http://www.over-value.com 左邊的產品列表效果,我做的是一個使用者控制項。