网站首页
网站导航
Ctrl+D收藏
首 页
代码段
源码包
文档库
工具箱
代码语言
.
CSharp
.
JS
Java
Asp.Net
C
MSSQL
PHP
Css
PLSQL
Python
Shell
EBS
ASP
Perl
ObjC
VB.Net
VBS
MYSQL
GO
Delphi
AS
DB2
Domino
Rails
ActionScript
Scala
代码分类
文件
系统
字符串
数据库
网络相关
图形/GUI
多媒体
算法
游戏
Jquery
Extjs
Android
HTML5
菜单
网页交互
WinForm
控件
企业应用
安全与加密
脚本/批处理
开放平台
其它
【
C#
】
用DataTable 递归生成目录树
作者:
明华
/ 发布于
2016/4/26
/
345
static DataColumn column = new DataColumn(); static DataTable table = new DataTable(); static DataRow MyRow; ublic static DataTable GetCategoryTree(WebInfoBase info) { DataTable dt = info.List(_DefaultDB, "", "[ID],[Title],[ParentID],[ChildNum],[Depth],[OrderNo]", "&version=", "[ID] ASC"); if (table.Rows.Count > 0) { table.Columns.Clear(); table.Rows.Clear(); } CreateDataTable(); GetTree(dt, "0", 0); return table; } public static void GetTree(DataTable dt, string pid, int blank) { string str = " "; DataView dv = new DataView(dt); dv.RowFilter = "ParentID = " + pid; if (blank > 0) { string s = ""; if (blank == 1) { str = "├"; } for (int i = 2; i <= blank; i++) { s = s + " | "+" "+" - "; } str = s + "├"; } foreach (DataRowView drv in dv) { string id = drv["ID"].ToString(); string Title = drv["Title"].ToString(); string OrderNo = drv["OrderNo"].ToString(); string ParentID = drv["ParentID"].ToString(); string Depth = drv["Depth"].ToString(); string ChildNum = drv["ChildNum"].ToString(); MyRow = table.NewRow(); MyRow["ID"] = int.Parse(id); MyRow["Title"] = str + Title; MyRow["OrderNo"] = int.Parse(OrderNo); MyRow["ParentID"] = int.Parse(ParentID); MyRow["Depth"] = int.Parse(Depth); MyRow["ChildNum"] = int.Parse(ChildNum); table.Rows.Add(MyRow); int n = int.Parse(Depth); //if (n <= 1) //{ n++; //} GetTree(dt, id, n); } } public static void CreateDataTable() { table.Columns.Clear(); column = new DataColumn(); column.DataType = System.Type.GetType("System.Int32"); column.ColumnName = "ID"; table.Columns.Add(column); column = new DataColumn(); column.DataType = System.Type.GetType("System.Int32"); column.ColumnName = "ParentID"; table.Columns.Add(column); column = new DataColumn(); column.DataType = Type.GetType("System.String"); column.ColumnName = "Title"; table.Columns.Add(column); column = new DataColumn(); column.DataType = Type.GetType("System.Int32"); column.ColumnName = "ChildNum"; table.Columns.Add(column); column = new DataColumn(); column.DataType = Type.GetType("System.Int32"); column.ColumnName = "Depth"; table.Columns.Add(column); column = new DataColumn(); column.DataType = Type.GetType("System.Int32"); column.ColumnName = "OrderNo"; table.Columns.Add(column); //table.Columns.Clear(); }
评论列表
本站所提供的代码,版权归原作者所有,若有侵犯作者版权,请与我们联系,我们将立即删除或修改。谢谢!
本站所有代码发布及提供者。
试试其它关键字
同语言下
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
.
实现对图片上传的接收
.
去除字符串中的空格,回车,换行符转变成‘;’在按‘
.
按照回车换行符分割字符串
.
文件MD5码 比较,检测文件是否一样
.
计算每周和每月固定日期
可能有用的
.
C#动态修改文件夹名称(FSO实现,不移动文件)
.
c# 移动文件或文件夹
.
c#图片添加水印
.
网站后台修改图片尺寸代码
.
处理大图片在缩略图时的展示
.
实现对图片上传的接收
.
去除字符串中的空格,回车,换行符转变成‘;’在按‘
.
按照回车换行符分割字符串
.
文件MD5码 比较,检测文件是否一样
.
计算每周和每月固定日期
明华
贡献的其它代码
(
21
)
.
在每周日凌晨零点零分定期备份/user/backup到/tmp目录
.
table给tbody设置滚动条
.
判断两个字符串是否存在相同的内容
.
屏幕中间的弹框列表
.
关于定时器动画效果
.
Shell相关
.
日志相关
.
拼接JSON字符串
.
纯servlet实现文件上传和下载文件
.
获取签名公钥 和 公钥私钥加解密
地图
本站
我们
服务
版权
联系
回馈
博客