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;
}
}

运行结果如下图:

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

时间: 2024-11-06 02:58:16

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

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

最终效果图:(用于学习类的效果 图片丑了点,看官莫怪) 新建窗体 然后在前端适当位置插入如下代码: <TreeView x:Name="departmentTree" Height="500" Width="500"> <TreeView.ItemTemplate> <HierarchicalDataTemplate ItemsSource="{Binding Nodes}"> <St

WPF下递归生成树形数据绑定到TreeView上(转)

最终效果图:(用于学习类的效果 图片丑了点,看官莫怪) 新建窗体 然后在前端适当位置插入如下代码: <TreeView x:Name="departmentTree" Height="500" Width="500"> <TreeView.ItemTemplate> <HierarchicalDataTemplate ItemsSource="{Binding Nodes}"> <St

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

CREATE TABLE [dbo].[sysMenuTree]([NoteId] [decimal](18, 0) NOT NULL,[ParentId] [decimal](18, 0) NULL,[sText] [nvarchar](50) NULL,[sValue] [nvarchar](50) NULL,[sURL] [nvarchar](50) NULL,[sTarget] [nvarchar](50) NULL,[Chger] [nvarchar](50) NULL,[ChgTim

Java递归获取部门树 返回ztree数据

@GetMapping("/getDept")@ResponseBodypublic Tree<DeptDO> getDept(String deptId){ Tree<DeptDO> deptNode = getDeptNode(deptId); if (deptNode == null){ return null; } List<Tree<DeptDO>> childNode = getChildNode(deptId); for (

C# TreeView 树节点:递归显示整个系统盘符文件目录及文件

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Forms; using System.IO; namespace Demo { /// <summary> /// 有关对于TreeView节点的填充的相关处理类 /// </summary> class TreeViewUtils { #region 有关将整个系统盘

Day03处理上级部门(树状结构)和用户管理

系统管理:部门管理-处理上级部门 添加或者修改时,上级部门的格式如图:.解决此功能将面临两个问题:1.将所有部门名称以下拉选的形式展示出来2.以树状结构展示.在此我们先解决问题1. 在添加页面中展示所有部门名称,并完成添加功能 DepartmentAction: public String addUI() throws Exception { //准备数据 List<Department> departmentList = departmentService.findAll(); Action

spring-boot-plus V1.4.0发布 集成用户角色权限部门管理

RBAC用户角色权限 用户角色权限部门管理核心接口介绍 Shiro权限配置 ?? Shiro权限配置 数据库模型图 ?? spring-boot-plus初始化SQL下载 获取验证码 可配置是否启用验证码 默认未启用 如已启用验证码校验,登陆时,需传入verifyToken和code 验证码演示 spring-boot-plus: # 是否启用ansi控制台输出有颜色的字体 enable-ansi: true # 是否启用验证码 enable-verify-code: true enable-v

sqlserver with as 双向递归

递归上下级部门,获取相关的部门单位 部门表: sql语句: with Temp1 as ( select GroupID,G_ParentID from sys_Group where GroupID={当前部门GroupID} union all select sys_Group.GroupID,sys_Group.G_ParentID from Temp1 inner join sys_Group on Temp1.G_ParentID=sys_Group.GroupID ), Temp2

OA项目11:部门列表树状显示功能及其他代码优化

首注:本学习教程为传智播客汤阳光讲师所公布的免费OA项目视频我的文字版实践笔记,本人用此来加强巩固自己开发知识,如有网友转载,请注明.谢谢. 一 使用递归使部门列表树状显示: 1.写一个工具类,实现通过顶级部门查询所有,具体如下: 1 package cn.clear.oa.util; 2 3 import java.util.ArrayList; 4 import java.util.Collection; 5 import java.util.List; 6 7 import cn.clea