zoukankan      html  css  js  c++  java
  • 递归生成数CreateTree()

    using Microsoft.Web.UI.WebControls;
     private void CreateTree()
      {
       try
       {
        TableRow tr = new TableRow() ;
        TableCell tc = new TableCell() ;
        System.Web.UI.HtmlControls.HtmlGenericControl div = new HtmlGenericControl() ;
        div.Style["width"] = "100%" ;
        div.Style["height"] = "477px" ;
        div.Attributes["class"] = "div-scroll" ;
        TreeView treeview = new TreeView() ;
        //产生树
        CreatMyTree(treeview);
        treeview.ID = "viewtree" ;
        //选中的菜单展开
        treeview.SelectExpands = true ;
       
        //初始化展开层数
        treeview.ExpandLevel = 3 ;
        treeview.Width =Unit.Parse("100%");
        div.Controls.Add(treeview) ;

        tc.Controls.Add(div) ;
        tr.Cells.Add(tc) ;
        tbTree.Rows.Add(tr) ;
       }
       catch(Exception err)
       {
        Common.ShowInfor(err.Message,"error",this.Page) ;
        return ;
       }
      }

      #region 生成树
      /// <summary>
      /// 生成树
      /// </summary>
      /// <param name="mytree"></param>
      /// <returns></returns>
      private TreeView CreatMyTree( TreeView mytree )
      {
       string strSql = "select * from "+strView+" where PTypeFSN is null  order by PTypeSort " ;
       DataSet dsTree = dboperReq.GetDSet(strSql) ;
       int iTreeNode = dsTree.Tables[0].Rows.Count ;
       if(iTreeNode==0)
       {
        hdValue.Value = "1" ;
       }
       for( int i = 0 ; i < iTreeNode ; i++ )
       {
        TreeNode treenode = new TreeNode() ;
        treenode.DefaultStyle["FONT-FAMILY"] = "宋体" ;
        treenode.DefaultStyle["FONT-SIZE"] = "9pt" ;
        treenode.SelectedStyle["background-color"] = "#eaf4fd" ;
        treenode.Type = dsTree.Tables[0].Rows[i]["PTypeSN"].ToString() ;
        treenode.Text = "<a href='GoodsTypeMt.aspx?PTypeSN="+treenode.Type+"' style='text-decoration:none;color:black'>"+dsTree.Tables[0].Rows[i]["PTypeSName"].ToString()+"</a>" ;
        CreatNode( treenode ) ;
        mytree.Nodes.Add(treenode) ;
        if( ViewState["PTypeSN"].ToString() == "" )
        {
         ViewState["PTypeSN"] = dsTree.Tables[0].Rows[0]["PTypeSN"].ToString() ;
        }
       }
       return mytree ;
      }

      //递归生成树的节点
      private void CreatNode( TreeNode mynode )
      {
       string strFfseq = mynode.Type ;
       string strSql = "select * from "+strView+" where PTypeFSN = '"+strFfseq+"' and flag='0' order by PTypeSort " ;
    //   DbOperate dboperReq2= new DbOperate();
       DataSet dsNode = dboperReq.GetDSet(strSql) ;
       int iNodes = dsNode.Tables[0].Rows.Count ;
       for( int i = 0 ; i < iNodes ; i++ )
       {
        TreeNode subnode = new TreeNode() ;
        subnode.DefaultStyle["FONT-FAMILY"] = "宋体" ;
        subnode.DefaultStyle["FONT-SIZE"] = "9pt" ;
        subnode.HoverStyle["background-color"] = "#eaf4fd" ;
        //    string strLevel = dsNode.Tables[0].Rows[i]["fstep"].ToString() ;
        subnode.Type = dsNode.Tables[0].Rows[i]["PTypeSN"].ToString() ;
        subnode.Text = "<a href='GoodsTypeMt.aspx?PTypeSN="+subnode.Type+"' style='text-decoration:none;color:black'>"+dsNode.Tables[0].Rows[i]["Ptypeid"].ToString()+dsNode.Tables[0].Rows[i]["PTypeSName"].ToString()+"</a>" ;
        mynode.Nodes.Add(subnode) ;
        string strNodeSql = "select * from "+strView+" where PTypeSN = '"+subnode.Type+"'" ;
    //    DbOperate dboperReq1= new DbOperate();
        DataSet dsLeaf = dboperReq.GetDSet(strNodeSql) ;
        if( dsLeaf != null && dsLeaf.Tables[0].Rows.Count > 0 )
        {
         CreatNode(subnode) ;
        }
       }
      }
      #endregion

  • 相关阅读:
    Redis命令——小白学习 Redis 数据库日记(2017-06-13)
    Buses(形容城市公车交通情况)
    Things you need to prepare before going to airport
    bathroom words
    this指针
    友元
    成员对象和封闭类
    静态成员变量和静态成员函数、 常量对象和常量成员函数
    C++类
    shell选择语句、循环语句
  • 原文地址:https://www.cnblogs.com/jameshappy/p/1534783.html
Copyright © 2011-2022 走看看