部门树形结构。设计张部门表用于存储部门编码、名称、上级部门id,使用Treeview控件显示部门树,并实现部门增删改、移动、折叠等功能。特别提示,部门有层级关系,可用donetbar的adtree控件

代码如下

 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Threading.Tasks;
 9 using System.Windows.Forms;
10
11 namespace 部门树形结构
12 {
13     public partial class Form1 : Form
14     {
15         public Form1()
16         {
17             InitializeComponent();
18         }
19
20         private void Form1_Load(object sender, EventArgs e)
21         {
22             BindTree("0");
23         }
24         DBHelp s = new DBHelp();
25         private void BindTree(string pid)
26         {
27             string str = "select * from biao where SJ_id=" + int.Parse(pid);
28             DataTable ta = s.getTableBySql(str);
29             if (ta.Rows.Count > 0)
30             {
31                 for (int i = 0; i < ta.Rows.Count; i++)
32                 {
33                     TreeNode node = new TreeNode();
34                     node.Text = ta.Rows[i]["name"].ToString();
35                     node.Tag = ta.Rows[i]["id"].ToString();
36                     this.treeView1.Nodes.Add(node);
37             BindNode(node);
38                 }
39             }
40         }
41         private void BindNode(TreeNode nd)
42         {
43             string str = "select * from biao where SJ_id="+ Convert.ToString(nd.Tag);
44             DataTable ta = s.getTableBySql(str);
45             for (int i = 0; i < ta.Rows.Count; i++)
46             {
47                 TreeNode node = new TreeNode();
48                 node.Text = ta.Rows[i]["name"].ToString();
49                 node.Tag = ta.Rows[i]["id"].ToString();
50                 nd.Nodes.Add(node);//重点
51                 BindNode(node);
52             }
53         }
54
55         private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
56         {
57             if (treeView1.SelectedNode != null)//重点部分
58             {
59                 txt_id.Text= treeView1.SelectedNode.Tag.ToString();//取值
60                 txt_name.Text= treeView1.SelectedNode.Text;
61
62                 string str = "select * from biao where id=" + int.Parse(txt_id.Text);
63                 DataTable ta = s.getTableBySql(str);
64                 txt_sj.Text = ta.Rows[0]["SJ_id"].ToString();
65             }
66         }
67         //添加
68         private void buttonX1_Click(object sender, EventArgs e)
69         {
70             string sql_add =string.Format("insert into biao(name,SJ_id) values('{0}',{1})", txt_name.Text,int.Parse(txt_sj.Text));
71             if (s.ExecuteIDUBySql(sql_add) > 0)
72             {
73                 MessageBox.Show("添加成功!", "消息");
74             }
75             else
76             {
77                 MessageBox.Show("添加失败!", "消息");
78             }
79             treeView1.Nodes.Clear();
80             BindTree("0");
81         }
82     }
83 }

转载于:https://www.cnblogs.com/gx-143/p/5775705.html

部门树形结构,使用Treeview控件显示部门相关推荐

  1. python制作好看的界面_【一点资讯】Python界面如何漂亮的展示树形结构,PyQt5控件之QTreeWidget详解 www.yidianzixun.com...

    前面内容,我们介绍了关于PyQt5的一些常用高级控件的使用,为了更好的便于大家理解,我们通过一些案例进行了讲解.用户接口 用Python将电子表格Excel展示在界面中,PyQt5之QTableWid ...

  2. Kanzi学习之路(3):Kanzi的树形结构和常用控件介绍

    今天我们来通过kanzi studio,感性的了解一下kanzi App的结构和一些常用的控件. 首先我们先新建一个工程,lesson3,通过前面的学习,对于kanzi studio的交互界面有了初步 ...

  3. C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标

    在C#系统应用毕设U盘防御软件中需要实现文件不可恢复的删除,首先需要实现类似于资源管理器的界面,通过TreeView控件显示"我的电脑"所有磁盘文件树状目录并加载相应图标.显示结果 ...

  4. 给TreeView控件绑定数据

    TreeView控件显示Node对象的等级体系结构,每个Node对象包含了一个标签和可选的点位图.TreeView控件通常用于显示文档头.索引中的条目.磁盘上的文件和目录或者可以显示为等级结构的各种其 ...

  5. VB Treeview控件 介绍与使用

    一.概述 TreeView控件显示Node对象的分层列表,每个Node对象均由一个标签和一个可选的位图组成.TreeView 一般用于显示文档标题.索引入口.磁盘上的文件和目录.或能被有效地分层显示的 ...

  6. android treeview 树形结构,前端开发中,使用TreeView控件创建树形结构

    原标题:前端开发中,使用TreeView控件创建树形结构 Wijmo是一款使用Type编写的新一代Java/HTML5控件集.它秉承触控优先的设计理念,在全球率先支持AngularJS,并提供性能卓越 ...

  7. [WTL/ATL]_[初级]_[TreeView控件如何显示ToolTip]

    场景 在开发界面程序时,CTreeViewCtrl(它实际内部封装的就是Win32的TreeView控件)一般会用来作为选择某些类型的树形菜单,点击某项的时候,右边能显示某些对应的数据.当这个控件的宽 ...

  8. 使用TreeView控件时订制树形收起、展开的个性图标

    在开发业务逻辑的应用时,TreeView树形控件经常被用到,系统默认显示展开.收起的图标为我们常见的+.-符号图标.如图: 那么如何订制自己的个性图标呢? 我们在MSDN上面可以找到,TreeView ...

  9. winform中TreeView控件复选框联动时鼠标点击过快导致的显示不正确的问题

    今天我在试着做一个C#树形视图(TreeView)控件,要求在每个节点前面添加一个可用于打勾的复选框,并要求复选框有上下级联动的效果.现在在网上能查到挺多满足这类功能的代码,原本我也以为这是一件挺简单 ...

最新文章

  1. 叶片制成切片的结构示意图_吉林大学《JPCL》:简单方法!制备高性能全叶片涂层量子点LED...
  2. python中webdriver_Python自动化学习--Webdriver中的常用方法
  3. 如何查询linux服务器的网卡,Linux服务器如何查看有没有无线网卡
  4. 运动搜索(运动估计)知识
  5. 制作Oracle dockerfile镜像
  6. qt与JAVA服务器通信_Qt实现的SSL通信客户端和服务器
  7. java 虚拟内存 堆_jvm虚拟内存分布 与 GC算法
  8. 傻瓜神经网络入门指南
  9. Qt加载RGB内存数据,并显示彩色图
  10. Excel对话框大全
  11. hbase常识及habse适合什么场景
  12. Visio 2013打开自动关闭,闪退的解决办法
  13. SQL在线练习 工具
  14. C语言 生成随机数 分析给定范围的随机数生成公式
  15. 20200525-生物技术-四川师范大学自考生物技术(本科)考试计划.txt
  16. 优化广域网带宽,让应用加速
  17. 2018年宇视科技智能交通-嵌入式软件开发线上笔试题
  18. 全志T3开发板——嵌入式入门学习测试教程(4)
  19. java jtextarea字体_Jtextarea如何设置不同字体、颜色
  20. python图像处理:直方图的规定化(直方图匹配)

热门文章

  1. 苏宁易购:Hadoop失宠前提是出现更强替代品
  2. Array的sort方法
  3. 为什么启动hbase shell后,创建按create 'test', 'cf'失败?
  4. 【cocos2d-x】2.0升级为3.0一些常见变化纪录
  5. 类和类之间的关系解析-1
  6. mysql数据库服务器设置访问权限
  7. 一起谈.NET技术,异步调用与多线程的区别
  8. struct and union
  9. Smarty目录结构和子目录路径问题
  10. Linux基础命令---findfs