一、基本概念

1、ImageList控件

ImageList组件,又称为图片存储组件,它主要用于存储图片资源,然后在控件上显示出来,这样就简化了对图片的管理。ImageList组件的主要属性是Images,它包含关联控件将要使用的图片。每个单独的图片可以通过其索引值或键值来访问。

2、ListView控件

参考: ListView用法

ListView控件,又称为列表视图控件,它主要用于显示带图标的项列表,其中可以显示大图标、小图标和数据。

基本属性:

(1)FullRowSelect:设置是否行选择模式。(默认为false) 提示:只有在Details视图该属性才有意义。

(2)GridLines:设置行和列之间是否显示网格线。(默认为false)提示:只有在Details视图该属性才有意义。

(3)AllowColumnReorder:设置是否可拖动列标头来对改变列的顺序。(默认为false)提示:只有在Details视图该属性才有意义。

(4)View:获取或设置项在控件中的显示方式,包括Details、LargeIcon、List、SmallIcon、Tile(默认为 LargeIcon)

(5)MultiSelect:设置是否可以选择多个项。(默认为false)

(6)HeaderStyle:获取或设置列标头样式。

Clickable:列标头的作用类似于按钮,单击时可以执行操作(例如排序)。

NonClickable:列标头不响应鼠标单击。

None:不显示列标头。

(7)LabelEdit:设置用户是否可以编辑控件中项的标签,对于Detail视图,只能编辑行第一列的内容。(默认为false)

(8)CheckBoxes:设置控件中各项的旁边是否显示复选框。(默认为false)

(9)LargeImageList:大图标集。提示:只在LargeIcon视图使用。

(10)SmallImageList:小图标集。提示:只有在SmallIcon视图使用。

(11)StateImageList:图像蒙板。这些图像蒙板可用作LargeImageList和SmallImageList图像的覆盖图,这些图像可用于指示项的应用程序定义的状态。(暂时不大懂)

(12)SelectedItems:获取在控件中选定的项。

(13)CheckedItems:获取控件中当前复选框选中的项。

(14)Soritng:对列表视图的项进行排序。(默认为None)

Ascending:项按递增顺序排序。

Descending:项按递减顺序排序。

None:项未排序。

(15)Scrollable:设置当没有足够空间来显示所有项时是否显示滚动条。(默认为true)

(16)HoverSelection:设置当鼠标指针悬停于项上时是否自动选择项。(默认为false)

(17)HotTracking:设置当鼠标指针经过项文本时,其外观是否变为超链接的形式。(默认为false)

(18)HideSelection:设置选定项在控件没焦点时是否仍突出显示。(默认为false)

(19)ShowGroups:设置是否以分组方式显示项。(默认为false);

(20)Groups:设置分组的对象集合。

(21)TopItem:获取或设置控件中的第一个可见项,可用于定位。(效果类似于EnsureVisible方法)

基本方法:

(1)BeginUpdate:避免在调用EndUpdate方法之前描述控件。当插入大量数据时,可以有效地避免控件闪烁,并能大大提高速度。

(2)EndUpdate:在BeginUpdate方法挂起描述后,继续描述列表视图控件。(结束更新)

(3)EnsureVisible:列表视图滚动定位到指定索引项的选项行。(效果类似于TopItem属性)

(4)FindItemWithText:查找以给定文本值开头的第一个 ListViewItem。

(5)FindNearestItem:按照指定的搜索方向,从给定点开始查找下一个项。提示:只有在LargeIcon或SmallIcon视图才能使用该方法。

基本事件:

(1)AfterLabelEdit:当用户编辑完项的标签时发生,需要LabelEdit属性为true。

(2)BeforeLabelEdit:当用户开始编辑项的标签时发生。

(3)ColumnClick:当用户在列表视图控件中单击列标头时发生。

五种视图:

(1) LargeIcon :每个项都显示为一个最大化图标,在它的下面有一个标签。

(2) SmallIcon :每个项都显示为一个小图标,在它的右边带一个标签。

(3) List :每个项都显示为一个小图标,在它的右边带一个标签。各项排列在列中,没有列标头。

(4) Details :可以显示任意的列,但只有第一列可以包含一个小图标和标签,其它的列项只能显示文字信息,有列表头。

(5) Tile :每个项都显示为一个完整大小的图标,在它的右边带项标签和子项信息。

二、简单使用

参考: 简单用法

1、winform工程中添加ListView控件和ImageList控件

2、设置ImageList控件

(1)添加要显示的图片

(2) 根据自己的要求设置ImageList控件的属性

(3) 设置ListView控件的属性

1)绑定数据源

2)设置显示类型为图标

View属性为设置样式。

3)根据自己的需求添加相关的图标

也可以增加分组

4)设置效果

下面是方法二后台绑定的方法: 用法

参考二: 用法

2) ListView 设置 及与 Image List 关联: a)点击 ListView 控件 ,设置属性项中Large Image List 想下拉 列表 Image List 关联 b)为 ListView 添加项并与 Image List 中每项关联 c)调整 图片 尺寸大小:首先选择 Image List 控件 ,在属性中设置 Image Size的值即可 最终 显示 效果: 当下拉框中的选择项非常多的时候,用户需要在大量的选项中找出自己需要的选项就有些不方便,所以可以通过此属性来实现一种功能:用户在下拉框中手工输入一个关键字,然后查询出所有符合要求的选项, 显示 到这个下拉框中,实现一种筛选的功能。此 控件 可以看作是两个Panel组合而成的一个 控件 或者是一个Panel被分成两部分的 控件 ,共有两个区域,在程序运行时,依旧可以调整中间的分割线来调整左右两部分的大小,并且可以进行嵌套以便区分为更多的部分,还可以横向分割。文本框中可以输入汉字,字母,字符,数字等所有字符。 在 image list 控件 图片 集合中添加要 显示 图片 。 我的 listView 中 View 属性 设置为 details(其它的没试)。然后将 ListView 的Small Image List 属性赋值为添加的 image list 控件 名。之后: listView 1.Small Image List = Image List Name; // Small Image List 属性 ListView Item lv = 展示一个小Demo  在窗口中读取txt文件数据,并 使用 chart 控件 绘制曲线。 首先,在空白的窗体上拖入一个按钮,命名为打开,执行打开文件职能;一个文本框,用来 显示 文件的路径;再拖入一个chart 控件 。 在chart 控件 中属性中的Series属性中编辑曲线样式和 显示 几条曲线。 全部添加完成,进行代码的编写,开始,定义一个点,用来 显示 坐标 public struct Point     //定义一个点     public double X;     public double Y; 然后书写打开按钮的代码,绘制坐标系 将读取到的所有行数据,处理后以坐标形式进行绘制 添加3个【Button】 控件 ,一个【pictureBox】 控件 ,一个【 Image List 控件 右键【 Image List 1】 控件 ,点击【选择图像】,打开【图像集合编辑器】 单击【添加】,逐个添加需要的 图片 。点击【确定】 改变【 Image List 控件 的【 Image Size】属性为【250, 200】 双击【 显示 图片 1】按钮 设置代码如下: private void bu private void Form1_Load(object sender, System.EventArgs e){string A = FolderSize(@"C://").ToString();this.label1.Text = A;}public static long FolderFileSize(string path){long size = 0;try{FileInfo [] DataTable AccountDt=DT; if (AccountDt != null) { Array List Arr List = new Array List (); ...