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

代码如下
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace 部门树形结构
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
BindTree("");
}
DBHelp s = new DBHelp();
private void BindTree(string pid)
{
string str = "select * from biao where SJ_id=" + int.Parse(pid);
DataTable ta = s.getTableBySql(str);
if (ta.Rows.Count > )
{
for (int i = ; i < ta.Rows.Count; i++)
{
TreeNode node = new TreeNode();
node.Text = ta.Rows[i]["name"].ToString();
node.Tag = ta.Rows[i]["id"].ToString();
this.treeView1.Nodes.Add(node);
BindNode(node);
}
}
}
private void BindNode(TreeNode nd)
{
string str = "select * from biao where SJ_id="+ Convert.ToString(nd.Tag);
DataTable ta = s.getTableBySql(str);
for (int i = ; i < ta.Rows.Count; i++)
{
TreeNode node = new TreeNode();
node.Text = ta.Rows[i]["name"].ToString();
node.Tag = ta.Rows[i]["id"].ToString();
nd.Nodes.Add(node);//重点
BindNode(node);
}
} private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
if (treeView1.SelectedNode != null)//重点部分
{
txt_id.Text= treeView1.SelectedNode.Tag.ToString();//取值
txt_name.Text= treeView1.SelectedNode.Text; string str = "select * from biao where id=" + int.Parse(txt_id.Text);
DataTable ta = s.getTableBySql(str);
txt_sj.Text = ta.Rows[]["SJ_id"].ToString();
}
}
//添加
private void buttonX1_Click(object sender, EventArgs e)
{
string sql_add =string.Format("insert into biao(name,SJ_id) values('{0}',{1})", txt_name.Text,int.Parse(txt_sj.Text));
if (s.ExecuteIDUBySql(sql_add) > )
{
MessageBox.Show("添加成功!", "消息");
}
else
{
MessageBox.Show("添加失败!", "消息");
}
treeView1.Nodes.Clear();
BindTree("");
}
}
}
部门树形结构,使用Treeview控件显示部门的更多相关文章
- 如何:使用TreeView控件实现树结构显示及快速查询
本文主要讲述如何通过使用TreeView控件来实现树结构的显示,以及树节点的快速查找功能.并针对通用树结构的数据结构存储进行一定的分析和设计.通过文本能够了解如何存储层次结构的数据库设计,如何快速使用 ...
- asp.net TreeView控件绑定数据库显示信息
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- [转] C#2010 在TreeView控件下显示路径下所有文件和文件夹
原文 张丹-小桥流水,C#2010 在TreeView控件下显示路径下所有文件和文件夹 C#2010学习过程中有所收获,便总结下来,希望能给和我一样在学习遇到困难的同学提供参考. 本文主要介绍两个自定 ...
- Win32中TreeView控件的使用方法,类似于资源管理器中文件树形显示方式
首先是头文件,内容如下: #include <tchar.h> #include "..\CommonFiles\CmnHdr.h" #include <Wind ...
- 在TreeView控件节点中显示图片
实现效果: 知识运用: TreeView控件中Nodes集合的Add方法 //创建节点并将节点放入集合中 public virtual TreeNode Add (string key,string ...
- TreeView控件概述、属性与方法
1.作用:用于显示Node结点的分层列表.2.添加到控件箱菜单命令:工程 | 部件,在部件对话框中选择:Microsoft Windows Common Controls 6.03.TreeView控 ...
- WPF中TreeView控件数据绑定和后台动态添加数据(一)
数据绑定: 更新内容:补充在MVVM模式上的TreeView控件数据绑定的代码. xaml代码: <TreeView Name="syntaxTree" ItemsSourc ...
- asp TreeView控件的使用
相对于之前发过一个TreeView控件的使用方法 本次利用js操作,页面无刷新,性能提高 Css编码可能时我的模板页样式被继承下来,导致页面变乱,不需要的可以去掉 前台 <style> . ...
- Winform TreeView控件技巧
在开发的时候经常使用treeview控件来显示组织结构啊,目录结构啊,通常会结合属性checkedboxs,来做选中,取消的操作下面是一个选中,取消的小例子,选中节点的时候,如果节点存在子节点,可以选 ...
随机推荐
- acdream1197 Points In Cuboid(hash树状数组)
题目链接:http://acdream.info/problem?pid=1197 题意:给出三维空间n个点,m个查询,每次查询某个立方体内的点的个数. 思路:按照一维排序,根据查询插入,其他两位用二 ...
- 【转载】ODBC, OLEDB, ADO, ADO.Net的演化简史
原文:ODBC, OLEDB, ADO, ADO.Net的演化简史 1.演变历史 它们是按照这个时间先后的顺序逐步出现的,史前->ODBC->OLEDB->ADO->ADO.N ...
- [SAP ABAP开发技术总结]增强Enhancement
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- C# 线程(四):生产者和消费者
From : http://kb.cnblogs.com/page/42530/ 前面说过,每个线程都有自己的资源,但是代码区是共享的,即每个线程都可以执行相同的函数.这可能带来的问题就是几个线程同时 ...
- hdu 4123 Bob’s Race 树的直径+rmq+尺取
Bob’s Race Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Probl ...
- 网上搜集的jq常用代码
1. 设置IE特有的功能: if ($.browser.msie) { //do something... } 2. 使用jQuery来代替一个元素: $('#thatdiv').replaceWi ...
- Windows Internals学习笔记(三)Procdump的使用
参考资料: 1. 下载地址 2. 使用示例
- effect c++ 口诀。
常用条款,写成口诀,记住.知其所以,也要时时使用. 1)习惯c++: 联替const初. 2)构造,复制,析构: 要知默,构赋析. 若不需,明拒绝. 构析不调虚. 异不逃析构. 基析要虚函. 赋值操, ...
- [转载] tmux的使用tips
原文: http://tangosource.com/blog/a-tmux-crash-course-tips-and-tweaks/
- SG 复习全部 (全部SG 总览)
1. SQL 基础 进入查缺补漏阶段 2. PL/SQL 进入 practice 阶段 3. Fundamental 1 这部分还是比较重要 architecture 数据库启动与关闭步骤 insta ...