栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > asp

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

asp 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

本文实例讲述了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_codedata.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;
/// 
///common 的摘要说明
/// 
/// 
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("parent_id=" + parent_id);
 int currentLenght = 0;     //当前次数
 foreach (DataRow row in dr)
 {
   string nodeImg = "";    //节点图片
   string treeLineImg = "";  //树线
   currentLenght += 1;
   if (Convert.ToInt32(row["childCount"]) > 0)
   {nodeImg = "";}
   else
   {nodeImg = "";}
   for (var i = 1; i <= Convert.ToInt32(row["level"]); i++)
   {
     //计算treeLineImg
     if (i == Convert.ToInt32(row["level"]))
     {
if (currentLenght == dr.Length)   //判断当前次数是否与本次dr总数量相等
{ treeLineImg += "└ "; }
else 
{ treeLineImg += "├ "; }
     }
     else
     {
treeLineImg += "│ ";
     }
   }
   returnString += "n";
   returnString += "" + treeLineImg + nodeImg + " " + row["monitor_grp_name"] + "n";
   returnString += "" + row["level"] + "n";
   returnString += "" + row["childCount"] + "n";
   returnString += "";
   returnString += "添加子类  ";
   returnString += "修改  ";
   returnString += "删除  ";
   returnString += "n";
   returnString += "n";
   GetTree_monitor_grp_id(dt, Convert.ToInt32(row["monitor_grp_id"]), ref returnString);
 }
 return returnString;
      }//GetCatalogTree End
     }//myDataBind End
   }
}

class_list.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
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;
using yihan.Data;
public partial class monitor_monitor_group_class_list : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
    if (!IsPostBack)
    {
      DataTable dt = new DataTable();
      string resultString = "";
      string sql = "select * from monitor_group order by orderby desc,monitor_grp_id";
      DbConn conn = new DbConn();
      dt = conn.DataTable(sql);
      Literal1.Text = myDataBind.GetTree_monitor_grp_id(dt, 0, ref resultString); //调用
      dt.Dispose();
      conn.Close();
    }
  }
}

class_list.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="class_list.aspx.cs" Inherits="monitor_monitor_group_class_list" %>
 
  


手写Table

string s=""
s+="
"; s+=变量值; s+="
"; ResPonse.Write(s);

至于循环及其其他的方法自己构造

更多关于asp.net相关内容感兴趣的读者可查看本站专题:《asp.net文件操作技巧汇总》、《asp.net ajax技巧总结专题》及《asp.net缓存操作技巧总结》。

希望本文所述对大家asp.net程序设计有所帮助。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/56462.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号