2011-04-08 4 views
0

데이터 테이블에 topicid, 항목 이름, 카테고리 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(); 
} 
관련 문제