C# WinForm中Listview的使用
来源:互联网 发布:模块数据出现异常400 编辑:程序博客网 时间:2024/06/05 00:08
在WinForm中,有时候需要在画面上显示图标以及详情之类的,还有的更多功能需要大中小图标的切换显示,这时候可以考虑Listview控件。代码如下:
private void BoardDisplay(int kbn){this.listView1.Clear();if (kbn == 0){ImageLoad(1);if (board_nums == 0){return;}this.listView1.View = View.List;this.listView1.SmallImageList = this.imageList1;this.listView1.BeginUpdate();for (int i = 1; i <= board_nums; i++){ListViewItem boardList = new ListViewItem();boardList.ImageIndex = i - 1;boardList.Text = board_names[i - 1];this.listView1.Items.Add(boardList);}this.listView1.EndUpdate();}else if (kbn == 1){ImageLoad(2);if (board_nums == 0){return;}this.listView1.View = View.SmallIcon;this.listView1.SmallImageList = this.imageList2;this.listView1.BeginUpdate();for (int i = 1; i <= board_nums; i++){ListViewItem boardList = new ListViewItem();boardList.ImageIndex = i - 1;boardList.Text = board_names[i - 1];this.listView1.Items.Add(boardList);}this.listView1.EndUpdate();}else{ImageLoad(3);if (board_nums == 0){return;}this.listView1.View = View.LargeIcon;this.listView1.LargeImageList = this.imageList3;this.listView1.BeginUpdate();for (int i = 1; i <= board_nums; i++){ListViewItem boardList = new ListViewItem();boardList.ImageIndex = i - 1;boardList.Text = board_names[i - 1];this.listView1.Items.Add(boardList);}this.listView1.EndUpdate();}}以上代码中的kbn是用来区别大中小图标的显示的,三种情况下Listview关联三个不同的Imagelist,三个imagelist中分别存放不同尺寸的图标。关联imagelist之前,要先将图片加载到imagelist中,即ImageLoad()方法(如下),再将此时的显示形式设置为相应的形式,即listview1.View = View.LargeIcon;这句话就是显示设置为大图标显示,这里显示共有5种属性。然后关联相应的imagelist。BeginUpdate()和EndUpdate()用于在向listview中加载显示项的过程中将listview置于挂起状态,令显示更加稳定。
private void ImageLoad(int kbn){board_nums = 0;DirectoryInfo di = new DirectoryInfo(kojiFolderPC);if (!di.Exists){//MessageBox.Show("画像のパスが存在しません");return;}if (di.GetFiles("*" + Para.iconType).Length != 0){switch (kbn){case 1:imageList1.Images.Clear();board_names = new string[di.GetFiles("*" + Para.iconType).Length];foreach (FileInfo fi in di.GetFiles("*" + Para.iconType)){imageList1.Images.Add(Image.FromFile(fi.FullName));board_names[board_nums] = fi.Name.Substring(0, fi.Name.Length - 4);board_nums++;}break;case 2:imageList2.Images.Clear();board_names = new string[di.GetFiles("*" + Para.iconType).Length];foreach (FileInfo fi in di.GetFiles("*" + Para.iconType)){imageList2.Images.Add(Image.FromFile(fi.FullName));board_names[board_nums] = fi.Name.Substring(0, fi.Name.Length - 4);board_nums++;}break;case 3:imageList3.Images.Clear();board_names = new string[di.GetFiles("*" + Para.iconType).Length];foreach (FileInfo fi in di.GetFiles("*" + Para.iconType)){imageList3.Images.Add(Image.FromFile(fi.FullName));board_names[board_nums] = fi.Name.Substring(0, fi.Name.Length - 4);board_nums++;}break;}}}
阅读全文
0 0
- C# WinForm中Listview的使用
- C# Winform ListView使用
- C# Winform ListView使用
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中ListView用法
- C# winform中listview排序
- C# WinForm中ListView 的绑定和读取方法
- [c# WinForm]往ListView中添加大量的不同图标
- C# 中 listview 的使用
- C#的Winform中使用用户控件
- C# WinForm开发中LinkLabel的使用
- JEECG 页面多个用户选择器只显示最后一个
- 观察者优缺点
- 过滤 URL 参数 空值,删除 FORM GET URL 空值解决函数方法
- Android基础:Activity回顾(生命周期、启动模式)
- python的爬虫框架scrapy安装和简单使用
- C# WinForm中Listview的使用
- 【怎样写代码】工厂三兄弟之抽象工厂模式(三):产品等级结构与产品族
- 1.html基础知识
- spark学习笔记之一:RDD的五大特性
- Redis-Migrate-Tool 使用详解2
- Linux yum详解
- c内存共享
- 数组【从入门到精通】
- 尚硅谷-Maven学习笔记