C# 里TreeView绑定数据库实现分类

摘要:
=null){//从数据库中读取数据SqlConnectioncon=newSqlConnection;con.Open();con.ChangeDatabase;SqlCommandcmd=newSqlCommand;//cmd.CommandType=CommandType.StoredProcedure;SqlDataAdaptersda=newSqlDataAdapter;DataSetds=newDataSet();try{sda.Fill;}catch{}finally{cmd=null;con.Close();}//往TreeView中添加树节点//添加根节点TreeNodetn=newTreeNode();tn.Text="所有产品";tn.Name="0";//Name作为IDtn.Tag="0";//Tag作为RootIDtn.ImageIndex=0;tn.SelectedImageIndex=0;tv.Nodes.Add;//该TreeView命名为tvtv.SelectedNode=tv.TopNode;//把其他节点加上去if(ds!
  1. //从数据库中读取数据
  2. SqlConnectioncon=newSqlConnection("server=127.0.0.1\\sqlexpress;uid=sa;");
  3. con.Open();
  4. con.ChangeDatabase("STggggg");
  5. SqlCommandcmd=newSqlCommand("select*from产品树whereNodeType='f'",con);
  6. //cmd.CommandType=CommandType.StoredProcedure;
  7. SqlDataAdaptersda=newSqlDataAdapter(cmd);
  8. DataSetds=newDataSet();
  9. try
  10. {
  11. sda.Fill(ds);
  12. }
  13. catch
  14. {
  15. }
  16. finally
  17. {
  18. cmd=null;
  19. con.Close();
  20. }
  21. //往TreeView中添加树节点
  22. //添加根节点
  23. TreeNodetn=newTreeNode();
  24. tn.Text="所有产品";
  25. tn.Name="0";//Name作为ID
  26. tn.Tag="0";//Tag作为RootID
  27. tn.ImageIndex=0;
  28. tn.SelectedImageIndex=0;
  29. tv.Nodes.Add(tn);//该TreeView命名为tv
  30. tv.SelectedNode=tv.TopNode;
  31. //把其他节点加上去
  32. if(ds!=null)
  33. {
  1. foreach(DataRowdrinds.Tables[0].Rows)
  2. {
  3. tn=newTreeNode();
  4. tn.Text=dr["Product"].ToString();
  5. tn.Name=dr["CateID"].ToString();//Name作为CateID
  6. tn.Tag=dr["RootID"].ToString();//Tag作为RootID
  7. tn.ImageIndex=1;
  8. tn.SelectedImageIndex=1;
  9. //判断是否为主节点
  10. if(dr["CateID"].ToString()==dr["RootID"].ToString())
  11. {
  12. //主节点
  13. tv.SelectedNode=tv.TopNode;
  14. }
  15. else
  16. {
  17. //其他节点
  18. if(tv.SelectedNode.Name!=dr["ParentID"].ToString())
  19. {
  20. TreeNode[]tn_temp=tv.Nodes.Find(dr["ParentID"].ToString(),true);//通过ParentID查找父节点
  21. if(tn_temp.Length>0)
  22. {
  23. tv.SelectedNode=tn_temp[0];//选中查找到的节点
  24. }
  25. }
  26. }
  27. tv.SelectedNode.Nodes.Add(tn);
  28. }
  29. //tv.ExpandAll();//展开TreeView
  30. tv.SelectedNode=tv.TopNode;//最顶端节点选中

免责声明:文章转载自《C# 里TreeView绑定数据库实现分类》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇“爆打”团队阿尔法发布 以及 第四周任务SpreadJS 纯前端表格控件应用案例:铭天预算执行系统下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

C# 中采用treeview递归生成目录树(Winform和Webform两种)

部门表: 课程表: 查询结果结构: 数据结构分析,部门分为部门id和部门名称;课程分为课程id,课程名称,课程路径和课程所属部门。 要求以部门为父节点展示不同部门下的课程。 Winform采用treeview递归生成目录树using System;using System.Collections.Generic;using System.Comp...

WPF笔记(3)TreeView

TreeView表示的是层次化结构(hierarchical)数据。TreeView的每一项称为TreeViewItem。TreeViewItem既可以被定义成一个字符串,也可以是一个嵌套的Item对象集合。TreeView的类层次结构如下: ControlItemsControlHeaderedItemsControlMenuItemToolBarTre...

树TreeView控件与DataTable交互添加节点(最高效的方法)

方法一: View Code 本文转载:http://dengzebo.blog.163.com/blog/static/18867406201032141742168/#region"读取树结点从Datatable"///<summary>///读取树结点从Datatable"///</summary>///<paramn...

delphi TreeView 从数据库添加节点的四种方法

方法一:delphi中递归算法构建treeView 过程:通过读取数据库中table1的数据,来构建一颗树。table1有两个字段:ID,preID,即当前结点标志和父结点标志。所以整个树的表示为父母表示法。本递归算法不难写,但是要注意:程序内部的变量都应使用局部变量!比如当Query是外部变量(函数外定义或者直接通过控件拖拽得来)时就会得到错误的结果。代...

通过键盘方向键控制TreeView节点的移动

本文转载:http://dengzebo.blog.163.com/blog/static/18867406201032141932204/ View Code #region"控制树节点移动,向左右下上"///<summary>///通过Ctrl+键盘移动选定的树节点///</summary>///<paramname=...

jquery treeview 功能参数

1、animated:String or Number 设置展开子节点时的显示速度,有 slow、normal、fast 或者指定速度值,与 jQuery 的 hide(show)中的 speed 参数相似。 2、persist: String 记忆折叠的方式。location:页面刷新不保留折叠状态;cookie:页面刷新保留折叠状态。 3、collap...