Asp.Net实现无限分类生成表格的方法(后台自定义输出table) 下载本文

内容发布更新时间 : 2024/12/23 16:18:17星期一 下面是文章的全部内容请认真阅读。

本文实例讲述了Asp.Net实现无限分类生成表格的方法。分享给大家供大家参考,具体如下:

数据结构 monitor_group

monitor_grp_id      monitor_grp_name     parent_id       level               childCount       orderby

[int,自动递增]           [nvarchar,not null]      [int,not null]  [int,not null]   [int,not null]     [int ,null]

      1       数据库服务器          0                  

1                 2

      2       应用服务器           

0                  

1                 2

      3       系统服务器           

0                  

1                  0 

      4       WEB服务器            

1                  

2                  0 

      5       邮件服务器           

1                  

2                  0 

      6       代理服务器            2                  

2                  0 

      7       Ftp服务器            

2                  

2                  0 \\App_code\\data.cs using System;

using System.Data;

using MySql.Data.MySqlClient; using System.Configuration; using System.Linq; using System.Web;

using System.Web.Security; using System.Web.UI;

using System.Web.UI.HtmlControls; using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts; using System.Xml.Linq; /// <summary> ///common 的摘要说明 /// </summary> /// 

namespace yihan {

  namespace Data   {

    public class myDataBind     {

      public myDataBind()       {

        //

        //TODO: 在此处添加构造函数逻辑         //       }

      public static string GetTree_monitor_grp_id(DataTable dt, int parent_id, ref string returnString)       {

        //绑定目录树

        //dt:DataTable对象;parent_id:父ID;returnString:输出引用变量;

        DataRow[] dr = dt.Select(\

        int currentLenght = 0;     //当前次数         foreach (DataRow row in dr)         {

          string nodeImg = \节点图片           string treeLineImg = \树线           currentLenght += 1;

          if (Convert.ToInt32(row[\

          {nodeImg = \src='images/treeExpand.gif' align='absmiddle'>\

          else

          {nodeImg = \src='images/treeNode.gif' align='absmiddle'>\

          for (var i = 1; i <= Convert.ToInt32(row[\i++)

          {

            //计算treeLineImg

            if (i == Convert.ToInt32(row[\             {

              if (currentLenght == dr.Length)   //判断当前次数是否与本次dr总数量相等

              { treeLineImg += \└ \               else

              { treeLineImg += \├ \             }             else             {

              treeLineImg += \│ \             }           }

          returnString += \

          returnString += \align='left'>\+ treeLineImg + nodeImg + \

          returnString += \align='center'>\+ row[\

          returnString += \align='center'>\+ row[\

          returnString += \           returnString += \href='class_add.aspx?monitor_grp_id=\+ row[\+ \添加子类</a>  \           returnString += \href='class_modi.aspx?monitor_grp_id=\+ row[\+ \修改</a>  \           returnString += \