C#递归所以部门展示到TreeView

1.首先是数据库表的设计

  新建一张部门表:TestUser表

  1.ID自增int主键 2.DeptName:nchar(10)3.DeptCode:nchar(10)4:ParentID:nchar(10)

2.部门表就建好了

3.新建一个网站

4.在网站的default.aspx界面拖一个TreeView控件。

5.aspx.cs代码如下:

public static string strConn=ConfigurationManager.ConnectionStrings["connString"].ConnectionString.ToString();//数据库连接串

protected void Page_Load(object sender,EventArgs e)
{
if(!isPostBack)
{
BindDeptTree("0");//数据库你也可以设计成int类型
}
} private void BindDeptNode(TreeNode DTnode)
{
try
{
DataSet=reDs("select DeptName,DeptCode from TestUser where ParentID='"+DTnode.Value+"'");
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
TreeNode node=new TreeNode();
node.Text=ds.Tables[0].Rows[i]["DeptName"].ToString();
node.Value=ds.Tables[0].Rows[i][DeptCode].ToString();
DTnode.ChildNodes.Add(node);//把指定的节点添加到控件中
BindDeptNode(node);
}
}
catch(Exception ex)
{
Log.LogWrite(ex.Message);
}
} private void BindDeptTree(string ParentID)
{
DataSet=reDs("select DeptName,DeptCode from TestUser where ParentID='"+DTnode.Value+"'");
for(int i=0;i<ds.Tables[0].Rows.Count;i++)
{
TreeNode node=new TreeNode();
node.Text=ds.Tables[0].Rows[i]["DeptName"].ToString();
node.Value=ds.Tables[0].Rows[i][DeptCode].ToString();
tvData.Nodes.Add(node);//TreeView的IDtvData
BindDeptNode(node);
}
} public DataSet reDs(string strSql)
{
using(SqlConnection conn=new Sqlconnection(strConn))
{
conn.Open();
DataSet ds=new DataSet();
SqlDataAdapter da=new SqlDataAdapter (strSql,conn);
da.Fill(ds);
conn.close();
return ds;
}
}

运行结果如下图:

希望对大家有帮助。有不足的地方望指教。尊重原创,转载请注明出处。

C#递归所以部门展示到TreeView的更多相关文章

  1. WPF下递归生成树形数据绑定到TreeView上

    最终效果图:(用于学习类的效果 图片丑了点,看官莫怪) 新建窗体 然后在前端适当位置插入如下代码: <TreeView x:Name="> <TreeView.ItemTe ...

  2. ASP.NET 递归将分类绑定到 TreeView

    CREATE TABLE [dbo].[sysMenuTree]([NoteId] [decimal](18, 0) NOT NULL,[ParentId] [decimal](18, 0) NULL ...

  3. 部门子部门表结构,递归指定部门的所有子部门SQL函数

  4. Java递归获取部门树 返回jstree数据

    @GetMapping("/getDept")@ResponseBodypublic Tree<DeptDO> getDept(String deptId){ Tree ...

  5. 潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据

    原文:潜移默化学会WPF(难点控件treeview)--改造TreeView(CheckBox多选择版本),递归绑定数据 目前自己对treeview的感慨很多 今天先讲 面对这种 表结构的数据 的其中 ...

  6. net TreeView 递归

     1.显示效果 2.数据insert脚本 insert into CITY(id,text,pid) values('1','城市',null)insert into CITY(id,text,pid ...

  7. SQL笔记 - CTE递归实例:显示部门全称

    昨天在整理JS的Function时,示例是一个递归函数.说起递归,想起前段时间在搞CTE,那个纠结呀,看似容易,可我总抓不住门道,什么递归条件,什么结束条件,一头雾水...今天一大早就爬起来,果然不负 ...

  8. bootstrap treeview 树形数据生成

    这个问题还是挺经典的,后台只是负责查出所有的数据,前台js来处理数据展示给treeview;show you the code below:<script> $(function () { ...

  9. TreeView 树节点的处理

    TreeView 树节点的处理 using System; using System.Collections.Generic; using System.ComponentModel; using S ...

随机推荐

  1. 014——VUE中v-if语法在网站注册中的实际应用

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. L144

    Puny Dwarf Planet, Named 'Goblin,' Found Far Beyond PlutoA scrawny dwarf planet nicknamed "the ...

  3. 用js 创建  简单查找 删除 二叉树

    <!DOCTYPE html> <html> <body> <canvas id="myCanvas" width="2000& ...

  4. Flask 的 数据库连接 与 DBUtils 数据库连接池

    Flask 的 数据库连接 与 DBUtils 数据库连接池 本地线程:thread_local 为每个线程创建存储数据的空间,用于线程之间的数据隔离 否则多个线程同时访问,会使得数据混乱 1 Fla ...

  5. I.MX6 U-Boot ping网络

    /********************************************************************* * I.MX6 U-Boot ping网络 * 说明: * ...

  6. .Net WebApi 添加Swagger

    前言 随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染.先后端分离的形态,而且前端技术和后端技术在各自的道路上越走越远. 前端和后端的唯一联系,变成了API接口:API文档 ...

  7. 深入分析AIDL原理

    深入分析AIDL原理 分类: Android2011-11-18 17:29 6522人阅读 评论(1) 收藏 举报 descriptorcallbackservicenullinterfaceser ...

  8. NOIP模拟题 膜法

    题目大意 给定若干组询问求$\sum\limits_{i=l}^r \dbinom{i}{k}$. 最终输出每组询问答案的乘积. 题解 首先把$l,r$分开处理相减,只需要求$\sum\limits_ ...

  9. Python之operator库

    operator库常用方法 Function Syntax add(a+b) a + b concat(seq1,seq2) seq1 + seq2 contains(seq, obj) obj in ...

  10. 【java规则引擎】drools6.5.0版本api简介

    在有些术语使用的时候,我有时候会用KIE项目.KIE引擎或者Drools项目.Drools引擎,大家应该理解KIE是Drools等项目的一个统称,所以在大多数情况下KIE或者特指Drools都是差不多 ...