日期:2014-05-17  浏览次数:20923 次

生成目录树
各位达人:我是C#菜鸟
先说下问题关键!
生成的目录树不需要其他的增删改查(即不做任何的二次编辑,仅仅是查看而已,或者选择目录树的节点,能将节点下的内容相应的显示出来。)

关键点二:数据库内容会变动,比如是自己手工添加的。

具体的图示如下:


求代码或清晰的思路

------解决方案--------------------
思路:
TreeView view = new TreeView();
......//

DataTable dt= GetTable(sql)

Hashtable parentAndSubs = new Hashtable();
for(int i=0;i<dt.Rows.Count;i++)
{
    if(parentAndSubs.ContainKeys(dt.rows[i]["大类名称"].ToStrig()) == false)
    {
       string parentName = dt.rows[i]["大类名称"].ToStrig();
       parentAndSubs[parentName] = null;

       TreeNode node=new TreeNode();
       node.Name =node.Text=parentName;  
       DataRow[] rows=dt.Select("大类名称='"+parentName+“’”);
       foreach(row IN ROWS)
       {
            TreeNode subNode=new TreeNode();
            subNode.Text=subNode.Name=row["小类名称"].ToString();
             
            node.Nodes.Add(subNode);
       }
       view.Nodes.Add(node);
    }
}