2011-04-08 123 views
0

我有一個數據表,具有列topicid,主題名稱,類別ID,類別名稱,子類別ID,子類別名稱 我必須將此表綁定到樹視圖,以便主題名稱將作爲父節點出現,類別名稱作爲主題和子類別名稱的子節點將作爲類別的子節點出現。樹視圖綁定到數據表

所有有名字作爲ID的節點字段例如主題節點有主題名稱和主題ID

類節點類別名稱和類別ID和子類別節點有子類別名稱和ID。

回答

0

這裏是代碼...

DataTable dtbl1=new DataTable();//parent datatable 
DataTable dtbl2=new DataTable();//child datatable 

DataSet ds = new DataSet(); 
ds.Tables.Add(dtbl1); 
ds.Tables.Add(dtbl2); 
ds.Relations.Add("Children", dtbl1.Columns["dtb1ID"], dtbl2.Columns["dtbl2ID"]);//define parent child relation in dataset 

if (ds.Tables[0].Rows.Count > 0) 
{ 
    trv.Nodes.Clear(); 
    Int32 count = 0; 

    foreach(DataRow masterRow in ds.Tables[0].Rows) 
    { 
     TreeNode masterNode = new TreeNode((String)masterRow["dtbl1ColumnYouWantToDisplay"], Convert.ToString(masterRow["dtbl1ID"])); 
     trv.Nodes.Add(masterNode); 

     foreach (DataRow childRow in masterRow.GetChildRows("Children")) 
     { 
      TreeNode childNode = new TreeNode((String)childRow["dtbl2ColumnYouWantToDisplay"], Convert.ToString(childRow["dtb2ID"])); 
      masterNode.ChildNodes.Add(childNode); 
      count++; 
     } 
    } 
    trv.ExpandAll(); 
}