当前位置:编程学习 > C#/ASP.NET >>

C#树状的制作!

本人是个刚接触开发的人 现在只想完成一个任务!什么控件啊 什么代码啊!我都不会用不会写!求高手给个源码!
具体内容如图!这个是表结构设计[img=C:\Users\Administrator\Desktop][/img] --------------------编程问答-------------------- --------------------编程问答-------------------- 看不到表结构 --------------------编程问答-------------------- 不知道如何回答 --------------------编程问答-------------------- 看不到图片 --------------------编程问答-------------------- 这个?? --------------------编程问答-------------------- 第一步先查询出你想要的所有的数据到DataSet,然后调用下面的方法。将ds做为参数传进去,pid是指父ID,比如第一级是0就
CreateTreeView(TreeNodeCollection nodes,ds, 0);
这样调用。看看方法的注释,你应该就明白了。

/// <summary>
    /// 创建DataSet的方法
    /// </summary>
    /// <param name="nodes">TreeView的根节点</param>
    /// <param name="ds">Dataset数据集合</param>
    /// <param name="pid">节点的父</param>
    private void CreateTreeView(TreeNodeCollection nodes, DataSet ds, int pid)
    {
        //定义筛选条件
        string sql = string.Format("ParentID={0}", pid);

        //从Dataset中筛选符合条件的行的集合,即父节点下的子节点数据
        DataRow[] drr = ds.Tables[0].Select(sql);

        //遍历获得行的集合
        foreach (DataRow dr in drr)
        {
            //创建TreeView节点
            TreeNode tnode = new TreeNode();
            //添加到根节点中
            nodes.Add(tnode);
          tnode.Text = dr["PurName"].ToString();//节点的显示字段    
          tnode.Value = dr["PurID"].ToString();//节点的value
           //递归调用方法
            CreateTreeView(tnode.ChildNodes, ds, Convert.ToInt32(dr["PurID"]));
            //从Dataset中删除已经添加的行,提高访问效率
            ds.Tables[0].Rows.Remove(dr);

        }
    }

--------------------编程问答-------------------- 用treeview
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,