C# winform

博客园 首页 联系 订阅 管理
///默认开始添加的节点为根节点

DataTable dt = new DataTable();

  private void bindtree(TreeNode addFather, string father)
        {
            DataRow[] drs = null;
            if (father != null && father != "")
            {
                drs = dt.Select("FatherNo ='" + father + "'");
            }
            else
            {
                drs = dt.Select("FatherNos is null");
            }

            foreach (DataRow d in drs)
            {
                TreeNode anode = new TreeNode(d["CategoryName"].ToString());
               
              
                string fatherno = d["CategoryNo"].ToString();
              
                if (father != null && father != "")
                {
                
                    anode.Name = d["FatherNos"].ToString() + fatherno + ",";
                    anode.Tag = addFather.Tag.ToString() + ">" + d["CategoryName"].ToString() + "(" + d["CategoryNo"].ToString() + ")";
                    addFather.Nodes.Add(anode);
                    bindtree(anode, fatherno);
                }
                else
                {
                    anode.Name = ","+ fatherno + ",";
                    anode.Tag = d["CategoryName"].ToString() + "(" + d["CategoryNo"].ToString() + ")";
                    treeView1.Nodes.Add(anode);
                    bindtree(anode, fatherno);
                }
            }
          
          
        }

 
//程序调用
 private void button5_Click(object sender, EventArgs e)
        {
            string sql = "select CategoryID,CategoryNo,CategoryName,FatherNo,FatherNos from ProductCategory where shopid=@shopid and companyid=@companyid";
            SqlParameter[] para = new SqlParameter[] {
                new SqlParameter("@shopid",shopid),
                new SqlParameter("@companyid",companyid)
            };
            dt=SqlHelper.ExecuteDataSet(CommandType.Text, sql, para).Tables[0];
             bindtree(null, "");
        }

posted on 2009-08-29 20:54  fffdc  阅读(887)  评论(2编辑  收藏  举报