WinForm控件之【ListView】
基本介绍
项列表控件,拥有五种不同视图的样式供展示项集合。
常设置属性
Columns:‘详细信息’视图中用来显示的列;
Groups:ListView列表中的组,将列表各项分组区域展示;
HorizontalScrollbar:当值为true时任一项内容超出控件右边缘将显示水平滚动条;
Enabled:指示是否启用该控件,true为启用状态用户可操作列表设置的允许功能,false为禁用状态无法操作;
Items:列表中的项集合;
LabelEdit:是否允许用户就地编辑项标签;
LargeImageList:列表以大图标视图时需要绑定图像的属性;
SmallImageList:列表以小图标视图时需要绑定图像的属性;
Name:指示代码中用来标识该对象的名称;
View:设置客户显示项的五种不同视图中的一种;
事例举例




相关代码
//加载女神图片显示到列表
private void btn_LoadInfo_Click(object sender, EventArgs e)
{
//查重新绑定时清空旧记录
if (listView1 != null && listView1.Items.Count > ) { listView1.Items.Clear(); } //获取本地图片信息显示到列表
Dictionary<string, int> dicIndex = new Dictionary<string, int>();
ImageList il = new ImageList();
string[] imagePaths = null;
string imagePath = txt_ImagePath.Text.Trim();
if (!string.IsNullOrWhiteSpace(imagePath))
{
if (System.IO.Directory.Exists(imagePath))
{
int index = ;
string fileType = ";.jpg;.jpeg;.png;";
imagePaths = System.IO.Directory.GetFiles(imagePath);
foreach (string path in imagePaths)
{
if (fileType.Contains(System.IO.Path.GetExtension(path)))
{
Image image = Image.FromFile(path);
string fileName = System.IO.Path.GetFileNameWithoutExtension(path); il.Images.Add(fileName, image);
dicIndex.Add(fileName, index++);
}
}
}
} if (il != null && il.Images.Count > )
{
//列表定义分组
ListViewGroup[] lvgs = { new ListViewGroup("内地", HorizontalAlignment.Center),
new ListViewGroup("日韩", HorizontalAlignment.Center),
new ListViewGroup("欧美", HorizontalAlignment.Center),
new ListViewGroup("其他", HorizontalAlignment.Center)};
listView1.Groups.AddRange(lvgs); for (int i = , counti = il.Images.Count; i < counti; i++)
{
string itemText = il.Images.Keys[i];
//定义列表展示项
ListViewItem lvi = new ListViewItem();
lvi.Text = itemText;
lvi.ImageIndex = dicIndex[itemText];
lvi.StateImageIndex = dicIndex[itemText]; foreach (ListViewGroup lvg in lvgs)
{
if (itemText.Contains(lvg.Header))
{
//给展示项分组
lvi.Group = lvg;
lvi.ToolTipText = string.Format("【{0}】{1}", lvg.Header, itemText);
break;
}
}
if (string.IsNullOrWhiteSpace(lvi.ToolTipText))
{
//文件名未按标准格式命名时统一分到一组展示
lvi.Group = lvgs[lvgs.Length - ];
lvi.ToolTipText = string.Format("【{0}】{1}", lvgs[lvgs.Length - ].Header, itemText);
} //添加项
listView1.Items.Add(lvi); } //设置项图片展示大小与像素
il.ImageSize = new Size(, );
il.ColorDepth = ColorDepth.Depth32Bit; //将项与列表绑定并设置部分属性控制列表展示及操作的类型
listView1.LargeImageList = il;
listView1.SmallImageList = il;
listView1.LabelEdit = true;
listView1.ShowItemToolTips = true;
listView1.View = View.LargeIcon; }
}
WinForm控件之【ListView】的更多相关文章
- C# winform控件之listview学习积累
//1.用key给ListViewItem 的 SubItems赋值 ListViewItem listViewItem= listView1.Items.Add("第一列文字") ...
- winform利用ImageList控件和ListView控件组合制作图片文件浏览器
winform利用ImageList控件和ListView控件组合制作图片文件浏览器,见图,比较简单,实现LISTVIEW显示文件夹图片功能. 1.选择文件夹功能代码: folderBrowserDi ...
- WinForm控件使用文章收藏整理完成
对C# WinForm开发系列收集的控件使用方面进行整理, 加入了一些文章, 不断补充充实, 完善这方面. 基础 - 常用控件 C# WinForm开发系列 - CheckBox/Button/Lab ...
- C#中常见的winform控件命名规范
我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...
- C# WinForm控件、自定义控件整理(大全)
转:http://www.cnblogs.com/top5/archive/2010/04/29/1724039.html 对C# WinForm开发系列收集的控件使用方面进行整理, 加入了一些文章, ...
- C#中常见的winform控件命名规范 转
我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇文章在C#的winform控件命名规范 的基础上对一些控件的名称的简称进行了整理. 1. 标准控件 NO. 控件类型简写 ...
- 在WPF中使用WinForm控件方法
1. 首先添加对如下两个dll文件的引用:WindowsFormsIntegration.dll,System.Windows.Forms.dll. 2. 在要使用WinForm控 ...
- WPF 调用WinForm控件
WPF可以使用WindowsFormsHost控件做为容器去显示WinForm控件,类似的用法网上到处都是,就是拖一个WindowsFormsHost控件winHost1到WPF页面上,让后设置win ...
- WinForm控件TreeView 只部分节点显示 CheckBox
WinForm控件TreeView 只部分节点显示 CheckBox 用过asp.net的应该知道,要在treeview中实现上述功能可以使用ShowCheckBox 属性指定那些节点显示check ...
- Winform控件重写
Winform控件重写 因为最近的项目中越来越多的遇到了比较特殊的一些控件,有时候我们自己封装一下可能更加方便我们的使用,下面是我们项目中用到的,简单做一个记录. TextBox控件重写 主要的控制代 ...
随机推荐
- Centos重启关机命令
Linux centos重启命令: 1.reboot 普通重启 2.shutdown -r now 立刻重启(root用户使用) 3.shutdown -r 10 过10分钟自动重启(root用户 ...
- 01 Python初探
Python初探 Become a better version of yourself! 诞生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年开始写Python ...
- FMX App的Application的事件(各种手机的全局按键)
直接上代码,还有条经验就是SetApplicationEventHandler可注册多个事件方法. unit Unit6; interface uses System.SysUtils, Syste ...
- 专访Rust——由Mozilla开发的系统编程语言(目标人群就是那些纠结的C++程序员,甚至也是他们自己)
Rust是由Mozilla开发的专门用来编写高性能应用程序的系统编程语言.以下是对Rust的创始人——Graydon Hoare的采访. Graydon Hoare,自称为职业编程语言工程师,从200 ...
- MotionManager 陀螺仪实现方式
题外话: 权利的游戏开播了,引用一句话: 布兰:一个人如果还把,他还能勇敢么? 奈德:人在害怕时候的勇敢,才是真的勇敢. 回归正题: 说下关于 CMMotionManage ...
- C++中的new,operator new与placement new
以下是C++中的new,operator new与placement new进行了详细的说明介绍,需要的朋友可以过来参考下 new operator/delete operator就是new和 ...
- 【Web前端Talk】无聊吗?写个【飞机大战】来玩吧(上篇)
01前言介绍 微信小游戏是基于微信客户端的游戏,它即点即玩,无需下载安装,体验轻便,可以和微信内的好友一起玩,比如PK.围观等,享受小游戏带来的乐趣.那如何开发一款属于自己的小游戏呢? 源码地址: h ...
- SYN6105型 GPS子钟
SYN6105型 GPS子钟 产品概述 SYN6105型GPS子钟是由西安同步电子科技有限公司精心设计.自行研发生产的一套以接收GPS卫星信号的子钟,从GPS地球同步卫星上获取标准时钟信号信息将这些时 ...
- Java打印实心、空心的三角形和菱形
1.实心三角形 代码: import java.util.Scanner; public class Test { public static void main(String[] args) { i ...
- GStreamer基础教程03 - 媒体类型与Pad
摘要 在上一篇文章中,我们介绍了如何将多个element连接起来构造一个pipline,进行数据传输.那么GStreamer是通过何种方式保证element之间能正常的进行数据传输?今天就将介绍GSt ...