数据库字段
ID
ParentID
EquipmentName
代码:
递归绑定
1protected void MachineBind(Int32 KindID)
2 {
3 TreeView1.Nodes.Clear();
4 TreeNode newnode = new TreeNode();
5 T_Machine dao = new T_Machine();
6
7 DataTable dt = dao.GetMachineByKindID(KindID);
8 this.InitTree(this.TreeView1.Nodes, 0, dt);
9 }
10
11 /**//// <summary>
12 /// 初始化树
13 /// </summary>
14 private void InitTree(TreeNodeCollection Nds, int parentID, DataTable dt)
15 {
16 TreeNode tmpNd;
17 DataRow[] rows = dt.Select("MachineParentID=" + parentID);
18 try
19 {
20 //使用foreach语句 来判断递归结束的条件
21 foreach (DataRow row in rows)
22 {
23 tmpNd = new TreeNode();
24 tmpNd.Value = row["MachineID"].ToString();
25 tmpNd.Text = row["MachineName"].ToString();
26 tmpNd.ToolTip = row["MachineFlag"].ToString();
27
28 Nds.Add(tmpNd);
29
30 InitTree(tmpNd.ChildNodes, Convert.ToInt32(tmpNd.Value), dt);
31 }
32 }
33 catch { }
34 }
35
36
查询
1查询#region 查询
2 protected void ImgBut_Select_Click(object sender, ImageClickEventArgs e)
3 {
4 TreeView1.CollapseAll();
5 GetNode(TreeView1.Nodes);
6 }
7 //递归查询
8 protected void GetNode(TreeNodeCollection tc)
9 {
10 foreach (TreeNode TNode in tc)
11 {
12 if (TNode.Text.IndexOf(txt_Select.Text.Trim())!=-1)
13 {
14 ExpandParent(TNode);
15 TNode.ImageUrl = "~/TreeLineImages/select.gif";
16 }
17 else
18 {
19 TNode.ImageUrl = "";
20 }
21
22 GetNode(TNode.ChildNodes);
23 }
24 }
25 //展开父节点
26 protected void ExpandParent(TreeNode node)
27 {
28 if (node.Parent != null)
29 {
30 node.Parent.Expand();
31 ExpandParent(node.Parent);
32 }
33 }
34 #endregion
删除
1/**//// <summary>
2 /// 删除 (需设置:TreeView1.ShowCheckBoxes = TreeNodeTypes.Leaf;)
3 /// </summary>
4 protected void but_Del_Click(object sender, EventArgs e)
5 {
6 T_Machine dao = new T_Machine();
7 Int32 count = TreeView1.CheckedNodes.Count;
8 for (int i = 0; i < count; i++)
9 {
10 dao.Delete(Convert.ToInt32(TreeView1.CheckedNodes[i].Value));
11 }
12 MachineBind(Convert.ToInt32(Menu1.SelectedItem.Value));
13 }
14
得到所有子节点
1 protected void DisplayChildNodesValue(TreeNodeCollection nodes)
2 {
3 foreach (TreeNode TNode in nodes)
4 {
5 Response.Write(TNode.Value.ToString() + "<br>");
6 DisplayChildNodesValue(TNode.ChildNodes);
7 }
8 }
9 protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e)
10 {
11 DisplayChildNodesValue(TreeView1.SelectedNode.ChildNodes);
12 }
分享到:
相关推荐
演示了C#的treeView控件的绝大部分常用操作. 加入兄弟结点,子结点,删除结点,取结点的相关信息,结点保存进xml,由xml载入等.
用VS2010 C#开发的TreeView示例源码 今天同事让我做一个TreeView的示例给她的同学,我索性花了半个小时帮她做了一下。常用的功能例如添加、删除、选中、递归调用遍历树等等等都有。 希望对编程爱好者有所帮助。如有...
摘要:C#源码,控件类库,TreeView C#从DataGridView中追加内容到Treeview控件中,同是这个实例源码也告诉大家,如何在Visual C#环境中使用TreeView控件和DataGridView控件,这两个控件都是十分常用的控件,所以还是有...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 C#源代码例子 C#例子 注意:本源代码共有20章节,分五部分上传,名称分别为:明日科技《C#示例源代码》(1-4)、明日科技《C#示例源代码》(1-4)、明日科技《C#...
实例003 设置程序代码行号 实例004 通过“格式”菜单布局窗体 实例005 为项目添加dll文件引用 实例006 为项目添加已有类 实例007 为项目添加第三方控件 实例008 为项目添加已有窗体 第2章 c#语言基础 实例009 利用...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 注:一共五部分,请全部下载完成后,放同一目录下解决即可。 目录: 第1章 窗体及菜单设计 实例001 自定义最大化、最小化和关闭按钮 2 实例002 磁性窗体的...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 注:一共五部分,请全部下载完成后,放同一目录下解决即可。 目录: 第1章 窗体及菜单设计 实例001 自定义最大化、最小化和关闭按钮 2 实例002 磁性窗体的...
C#示例源码 C#示例 C#源码 C#示例源代码 C#源代码 注:一共五部分,请全部下载完成后,放同一目录下解决即可。 目录: 第1章 窗体及菜单设计 实例001 自定义最大化、最小化和关闭按钮 2 实例002 磁性窗体的...
实例021 从DataGridView控件中拖放数据到TreeView控件 78 第3章 图形图像及多媒体应用 实例022 生成中文验证码 86 实例023 生成图片缩略图 88 实例024 不失真压缩图片 90 实例025 批量图像格式转换 ...
起步篇为第1章~第10章,主要介绍认识Visual C#,C#语言基础,C#语句控制,数组、面向对象编程,熟悉WinForms应用程序,WinForms窗体介绍,WinForms应用程序开发常用控件,菜单栏、工具栏和状态栏设计及对话框等内容...
实例021 从DataGridView控件中拖放数据到TreeView控件 78 第3章 图形图像及多媒体应用 实例022 生成中文验证码 86 实例023 生成图片缩略图 88 实例024 不失真压缩图片 90 实例025 批量图像格式...
分别介绍了C#语言基础、Windows窗体及常用控件、Windows高级控件、控件公共属性、方法及事件、数据库开发、文件、数据流与注册表、GDI+绘图技术和C#高级编程,共包含562个C#编程中常用的属性、方法、类和各种技术,...
实例003 设置程序代码行号 5 实例004 通过“格式”菜单布局窗体 6 实例005 为项目添加dll文件引用 7 实例006 为项目添加已有类 8 实例007 为项目添加第三方控件 9 实例008 为项目添加已有窗体 11 第2章 c#语言基础 ...
C#编程经验技巧宝典源代码,目录如下: 第1章 开发环境 1 <br>1.1 Visual Studio开发环境安装与配置 2 <br>0001 安装Visual Studio 2005开发环境须知 2 <br>0002 配置合适的Visual Studio 2005...