treeview和listview的用法
今天无聊中弄了个小东西,熟悉一下对listview和treeview的用法。代码如下:
public partial class Form1 : Form{private School school;public Form1(){InitializeComponent();Office o1 = new Office("计算机基础","王军","杨晓勇","何平","姜涛");Office o2 = new Office("软件工程", "马建国", "陈军", "刘晓燕");Office o3 = new Office("信息安全", "冯尧", "李建军", "张涛");Department d1=new Department("计算机",o1,o2,o3);Office o4 = new Office("自动控制", "吴自力", "陈锋", "薛小龙");Office o5 = new Office("工业设计", "吴淑华", "方坤", "何丽", "蔡聪");Department d2=new Department("机电工程",o4,o5);Office o6 = new Office("信息管理", "赵民", "盛晓楠", "徐小平");Office o7 = new Office("工商管理", "张敏", "李玲", "吕倩", "高健");Department d3=new Department("经济管理",o6,o7);school = new School("科大", d1, d2, d3);TreeNode root = treeView1.Nodes.Add(school.ToString());foreach(Department d in school.departments ){TreeNode node = root.Nodes.Add(d.ToString());foreach (Office o in d.offices){node.Nodes.Add(o.ToString());}}listView1.Columns.Add("姓名");listView1.Columns.Add("电话");listView1.Columns.Add("电子邮件");}private void treeView1_AfterSelect(object sender, TreeViewEventArgs e){listView1.Items.Clear();if (e.Node.Level == 0){foreach (Department d in school.departments){listView1.Items.Add(d.ToString(),0);}}else if (e.Node.Level == 1){foreach (Office o in school.departments[e.Node.Index].offices){listView1.Items.Add(o.ToString(), 1);}}else if (e.Node.Level == 2){foreach (string s in school.departments[e.Node.Parent.Index].offices[e.Node.Index].teachers){listView1.Items.Add(s.ToString(), 2);}}}}public class School{public School(string name, params Department[] departments){this.Name = name;this.departments = new List<Department>(departments);}public string Name { get; set; }public List<Department> departments { get; set; }public override string ToString(){return Name;}}public class Department{public string Name { get; set; }public List<Office> offices { get; set; }public Department(string name, params Office[] offices){this.Name = name;
this.offices = new List<Office>(offices);}public override string ToString(){return Name + "系";}}public class Office{public string Name { get; set; }public List<string> teachers { get; set; }public Office(string name, params string[] teachers){this.Name = name;this.teachers = new List<string>(teachers);}public override string ToString(){return Name + "教研室";}} 运行后截图:
转载于:https://www.cnblogs.com/xuekai-to-sharp/p/3384548.html
treeview和listview的用法相关推荐
- c# winform TreeView与ListView的项互相拖动的应用[转载]
转载modede 很久没写教程了,停顿了有两年之久了.今天我们来讨论讨论 winform 中TreeView与ListView,通观两者很相似,只是一个是树形结构,一个是列表结构. 今天自己创建的群里 ...
- [Delphi]ListView基本用法大全
Delphi ListView基本用法大全 //增加项或列(字段) ListView1.Clear; ListView1.Columns.Clear; ListView1.Columns.Add; L ...
- Android ListView常用用法(结合长按、数据库等)
http://www.iteye.com/topic/540423 ListView是比较常用的控件,但一直都觉得创建ListView步骤有点繁琐,故在此总结一下,方便查阅. 程序效果是实现一个Lis ...
- Delphi ListView基本用法大全
Delphi ListView基本用法大全 //增加项或列(字段) ListView1.Clear; ListView1.Columns.Clear; ListView1.Columns.Add; L ...
- Delphi ListView的用法(常用技巧) 作者:蓝色忧郁
Delphi ListView的用法(常用技巧) 作者:蓝色忧郁 日期:2006-08-10 字体大小: 小 中 大 //增加 i := ListView1.Items.Count; with ...
- ListView基本用法及适配器介绍
ListView基本用法 ListView常用属性 1.android:divider="" 列表之间绘制的颜色或者图片.一般开发中用于分隔表项.在实际开发过程中,如果你不想要列表 ...
- Android列表用法之二:实战ListView高级用法
在我们的项目中,并不是所有列表都是简单的使用.类似于新闻列表.QQ聊天列表等,具有图文并排的列表,每个item都有它不同的布局类型,都有其不同的实现方式.这类复杂的列表表现形式,在各类知名应用当中,不 ...
- 在winform中从外部拖动节点到树形结构(treeview和listview相互拖动)(一)
最近一个项目要用到从listview向treeview拖动item,达到从外部拖动图标成为树形结构的一部分,通过查阅资料总结了一些实现方式,分享给大家.这是winform中的例子. 在进行拖放操作之前 ...
- Android ListView常用用法(二)
来自:51CTO论坛 原帖:http://mobile.51cto.com/android-254823.htm Android开发:实现带图片和checkbox的listview 项目要用到一个li ...
最新文章
- 火遍AI圈的万字长文,Lecun却说“标题太好笑,作者发推宣战:欢迎来辩!
- 【Java 网络编程】UDP API 简介 ( DatagramSocket | DatagramPacket )
- 地图API引发的设想
- php5.5 mysql密码无法_MySQL密码正确却无法本地登录的解决方法
- Swagger2 添加HTTP head参数
- Netty与Spring WebSocket
- 如何将本地代码使用Git上传至Github
- 学生们喜欢在计算机教室上课用英语怎么说,说说学习本课的感想,并谈谈在信息技术课堂上如何体现以学生为主体,教师为主导?...
- java学习(133):泛型
- Ubuntu18.04安装最新R语言环境的方法
- 4-3利用神经网络解决分类和回归问题(1)
- 字符串处理 BestCoder Round #43 1001 pog loves szh I
- 从HighGUI的一段代码中看OpenCV打开视频的方式
- Ubuntu下安装网易有道词典
- Footprint 8月月报 DeFi市场多点开花,9月是否会迎来下一个爆发点
- WordPress社交问答社区主题
- SpringBoot Web项目 解析
- [Xilinx FPGA] #4 Xilinx FPGA 芯片命名规则与查询方法
- 人工智能传奇—关于AI起源与发展的故事
- 图解正则表达式,这一篇就够了