C#:C#控件系列四(列表类控件)
列表类控件
1. ListBox 控件:
ListBox控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。
在列表框中,用户一次可以选择一项,也可以选择多项。
1.1. 常用属性:
1.1.1. Items属性: 用于存放列表框中的列表项,是一个集合。通过该属性,可以添加列表项、移除列表项和获得列表项的数目。
1.1.2. MultiColumn 属性:用来获取或设置一个值,该值指示ListBox是否支持多列。
—— 值为 true 时表示支持多列,
—— 值为false 时不支持多列。
—— 当使用多列模式时,可以使控件得以显示更多可见项。
1.1.3. ColumnWidth属性:用来获取或设置多列 ListBox控件中列的宽度。
1.1.4. SelectionMode属性:用来获取或设置在ListBox控件中选择列表项的方法。
—— 当 SelectionMode属性设置为SelectionMode.MultiExtended 时,按下 Shift 键的同时单击鼠标或者同时按 Shift键和箭头键之一(上箭头键、下箭头键、左箭头键和右箭头键),会将选定内容从前一选定项扩展到当前项。按 Ctrl键的同时单击鼠标将选择或撤销选择列表中的某项;
—— 当该属性设置为 SelectionMode.MultiSimple 时,鼠标单击或按空格键将选择或撤销选择列表中的某项;
—— 该属性的默认值为SelectionMode.One,则只能选择一项。
1.1.5. SelectedIndex属性:用来获取或设置ListBox控件中当前选定项的从零开始的索引。
—— 如果未选定任何项,则返回值为1。对于只能选择一项的ListBox控件,可使用此属性确定ListBox中选定的项的索引。
——如果ListBox 控件的 SelectionMode 属性设置为 SelectionMode.MultiSimple 或SelectionMode.MultiExtended,并在该列表中选定多个项,此时应用SelectedIndices来获取选定项的索引。
1.1.6. SelectedIndices。该属性用来获取一个集合,该集合包含 ListBox 控件中所有选定项的从零开始的索引。
1.1.7. SelectedItem属性:获取或设置ListBox中的当前选定项。
1.1.8. SelectedItems属性:获取ListBox控件中选定项的集合,通常在ListBox控件的SelectionMode属性值设置为SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重选择ListBox)时使用。
1.1.9. Sorted属性:获取或设置一个值,该值指示ListBox控件中的列表项是否按字母顺序排序。
—— 如果列表项按字母排序,该属性值为true;
—— 如果列表项不按字母排序,该属性值为false。
—— 默认值为false。在向已排序的ListBox控件中添加项时,这些项会移动到排序列表中适当的位置。
1.1.10. Text 属性:该属性用来获取或搜索 ListBox控件中当前选定项的文本。
—— 当把此属性值设置为字符串值时,ListBox控件将在列表内搜索与指定文本匹配的项并选择该项。
—— 若在列表中选择了一项或多项,该属性将返回第一个选定项的文本。
1.1.11. ItemsCount属性:该属性用来返回列表项的数目。
1.2. 常用方法:
1.2.1. FindString方法:用来查找列表项中以指定字符串开始的第一个项,有两种调用格式。
—— [格式1]:ListBox对象.FindString(s);
—— [功能]:在“ListBox 对象”指定的列表框中查找字符串s,如果找到则返回该项从零开始的索引;如果找不到匹配项,则返回ListBox.NoMatches。
—— [格式2]:ListBox对象.FindString(s,n);
—— [功能]:在 ListBox 对象指定的列表框中查找字符串 s,查找的起始项为n+1,即n 为开始查找的前一项的索引。如果找到则返回该项从零开始的索引;如果找不到匹配项,则返回ListBox.NoMatches。
—— 注意:FindString方式只是词语部分匹配,即要查找的字符串在列表项的开头,便认为是匹配的,如果要精确匹配,即只有在列表项与查找字符串完全一致时才认为匹配,可使用FindStringExact方法,调用格式与功能与FindString基本一致。
1.2.2. SetSelected方法:用来选中某一项或取消对某一项的选择,调用格式及功能如下。
—— [格式]:ListBox对象.SetSelected(n,l);
—— [功能]:如果参数 l 的值是 true,则在 ListBox对象指定的列表框中选中索引为 n 的列表项,如果参数l 的值是 false,则索引为n 的列表项未被选中。
1.2.3. Items.Add方法:用来向列表框中增添一个列表项,调用格式及功能如下。
—— [格式]:ListBox对象.Items.Add(s);
—— [功能]:把参数s添加到“listBox对象”指定的列表框的列表项中。
1.2.4. Items.Insert方法:用来在列表框中指定位置插入一个列表项,调用格式及功能如下。
—— [格式]:ListBox对象.Items.Insert(n,s);
—— [功能]:参数n代表要插入的项的位置索引,参数s代表要插入的项,其功能是把s插入到“listBox对象”指定的列表框的索引为n的位置处。
1.2.5. Items.Remove方法:用来从列表框中删除一个列表项,调用格式及功能如下。
—— [格式]:ListBox对象.Items.Remove(k);
—— [功能]:从 ListBox对象指定的列表框中删除列表项s。
1.2.6. Items.Clear方法:用来清除列表框中的所有项。其调用格式如下:
—— ListBox对象.Items.Clear();
1.2.7. BeginUpdate方法和EndUpdate方法:这两个方法均无参数,调用格式分别如下:
—— ListBox对象.BeginUpdate();
—— ListBox对象.EndUpdate();
—— 这两个方法的作用是保证使用Items.Add 方法向列表框中添加列表项时,不重绘列表框。即在向列表框添加项之前,调用BeginUpdate方法,以防止每次向列表框中添加项时都重新绘制 ListBox 控件。完成向列表框中添加项的任务后,再调用 EndUpdate 方法使 ListBox控件重新绘制。当向列表框中添加大量的列表项时,使用这种方法添加项可以防止在绘制 ListBox 时的闪烁现象。
1.3. ListBox控件常用事件有Click和SelectedIndexChanged, SelectedIndexChanged事件在列表框中改变选中项时发生。
2. ComboBox 控件:
ComboBox控件又称组合框,默认情况下,组合框分两个部分显示:
顶部是一个允许输入文本的文本框,下面的列表框则显示列表项。
可以认为ComboBox就是文本框与列表框的组合,与文本框和列表框的功能基本一致。
与列表框相比,组合框不能多选,它无SelectionMode 属性。
但组合框有一个名为DropDownStyle的属性,该属性用来设置或获取组合框的样式。
3. CheckedListBox 控件:
CheckedListBox控件又称复选列表框,它扩展了ListBox控件,它几乎能完成列表框可以完成的所有任务,并且还可以在列表项旁边显示复选标记。
两种控件间的其他差异在于,复选列表框只支持DrawMode.Normal,并且复选列表框只能有一项选定或没有任何选定。
此处需要注意一点:选定的项是指窗体上突出显示的项,已选中的项是指左边的复选框被选中的项。除具有列表框的全部属性外,它还具有以下属性。
3.1. 常用属性
3.1.1. CheckOnClick属性:获取或设置一个值,该值指示当某项被选定时是否应切换左侧的复选框。
—— 如果立即切换选中标记,则该属性值为true;
—— 否则为false。默认值为false。
3.1.2. CheckedItems 属性:该属性是复选列表框中选中项的集合,只代表处于CheckState.Checked或CheckState.Indeterminate状态的那些项。 该集合中的索引按升序排列。
3.1.3. CheckedIndices属性:该属性代表选中项(处于选中状态或中间状态的那些项)索引的集合。
4. PictureBox控件的使用:
PictureBox控件又称图片框,常用于图形设计和图像处理应用程序,在该控件中可以加载的图像文件格式有:
位图文件(.Bmp)、图标文件(.ICO)、图元文件(.wmf)、.JPEG和.GIF 文件。
下而仅介绍该控件的常用属性和事件。
4.1. 常用属性:
4.1.1. Image属性:用来设置控件要显示的图像。把文件中的图像加载到图片框通常采用以下三种方式。
—— 设计时单击Image属性,在其后将出现【…】按钮,单击该按钮将出现一个【打开】对话框,在该对话框中找到相应的图形文件后单击【确定】按钮。产生一个Bitmap类的实例并赋值给Image属性。形式如下:
—— Bitmap p= new Bitmap(图像文件名);
—— pictureBox对象名.Image=p;
—— 通过Image.FromFile方法直接从文件中加载。形式如下:
—— pictureBox对象名.Image=Image.FromFile(图像文件名);
4.1.2. SizeMode属性:用来决定图像的显示模式。
5. Timer 控件:
Timer控件又称定时器控件或计时器控件,该控件的主要作用是按一定的时间间隔周期性地触发一个名为Tick的事件,
因此在该事件的代码中可以放置一些需要每隔一段时间重复执行的程序段。在程序运行时,定时器控件是不可见的。
5.1. 常用属性:
5.1.1. Enabled 属性:用来设置定时器是否正在运行。
—— 值为 true 时,定时器正在运行,
—— 值为 false 时,定时器不在运行。
5.1.2. Interval属性:用来设置定时器两次Tick事件发生的时间间隔,以毫秒为单位。如它的值设置为500,则将每隔0.5秒发生一个Tick事件。
5.2. 常用方法:
5.2.1. Start方法:用来启动定时器。调用的一般格式如下:
—— Timer控件名.start();
5.2.2. Stop方法:用来停止定时器。调用的一般格式如下:
—— Timer控件名.stop();
5.3. 常用事件:
定义器控件响应的事件只有Tick,每隔Interval时间后将触发一次该事件。
ProgressBar控件和 TrackBar控件
6. ProgressBar控件:
ProgressBar 控件又称进度条控件,该控件在水平栏中显示适当长度的矩形来指示进程的进度。
当执行进程时,进度条用系统突出显示颜色在水平栏中从左向右进行填充。
进程完成时,进度栏被填满。
当某进程运行时间较长时,如果没有视觉提示,用户可能会认为应用程序不响应,通过在应用程序中使用进度条,就可以告诉用户应用程序正在执行冗长的任务且应用程序仍在响应。
6.1. ProgressBar控件的常用属性如下。
6.1.1. Maximum属性:用来设置或返回进度条能够显示的最大值,默认值为100。
6.1.2. Minimum属性:用来设置或返回进度条能够显示的最小值,默认值为0。
6.1.3. Value属性:用来设置或返回进度条的当前位置。
6.1.4. Step属性:用来设置或返回一个值,该值用来决定每次调用PerformStep 方法时,Value属性增加的幅度。
—— 例如,如果要复制一组文件,则可将 Step 属性的值设置为 1,并将 Maximum属性的值设置为要复制的文件总数。
—— 在复制每个文件时,可以调用PerformStep方法按Step属性的值增加进度栏。
6.2. ProgressBar控件的常用方法如下。
6.2.1. Increment方法:用来按指定的数量增加进度条的值,调用的一般格式如下:
—— progressBar对象.Increment(n);
—— 其功能是把“progressBar对象”指定的进度条对象的Value属性值增加n,n为整数。
—— 调用该方法之后,若Value属性大于Maximum属性的值,则Value属性值就是Maximum值,若Value属性小于Minimum属性值,则 Value属性值就是Minimum值。
6.2.2. PerformStep方法:用来按step属性值来增加进度条的Value属性值,调用的一般格式如下:
—— progressBar对象.PerformStep();
—— ProgressBar控件能响应很多事件,但一般很少使用。
7. TrackBar控件:
TrackBar控件又称滑块控件、跟踪条控件。
该控件主要用于在大量信息中进行浏览,或用于以可视形式调整数字设置。
TrackBar控件有两部分:缩略图(也称为滑块)和刻度线。
缩略图是可以调整的部分,其位置与Value 属性相对应。
刻度线是按规则间隔分隔的可视化指示符。
跟踪条控件可以按指定的增量移动,并且可以水平或者垂直排列。
7.1. TrackBar控件的常用属性如下。
7.1.1. Maximum属性:用来获取或设置TrackBar控件可表示的范围上限,即最大值。
7.1.2. Minimum属性:用来获取或设置TrackBar控件可表示的范围下限,即最小值。
7.1.3. Orientation属性:用来获取或设置一个值,该值指示跟踪条是在水平方向还是在垂直方向。
7.1.4. LargeChange属性:用来获取或设置一个值,该值指示当滑块长距离移动时应为Value属性中加上或减去的值。
7.1.5. SmallChange属性:用来获取或设置当滑块短距离移动时对Value属性进行增减的值。
7.1.6. Value属性:用来获取或设置滑块在跟踪条控件上的当前位置的值。
7.1.7. TickFrequency属性:用来获取或设置一个值,该值指定控件上绘制的刻度之间的增量。
7.1.8. TickStyle属性:用来获取或设置一个值,该值指示如何显示跟踪条上的刻度线。
7.2. TrackBar控件的常用事件是ValueChanged,该事件在TrackBar控件的Value属性值改变时发生。
8. HScrollBar 控件和 VScrollBar控件
其使用滚动条(ScrollBar)是大部分Windows应用程序中都具有的控件,是 Windows界面的一种常见元素,通常分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar)。
这两个控件主要用于在应用程序或控件中水平或垂直滚动,以方便在较长的列表中或大量信息中转移。
8.1. 常用属性:
8.1.1. Minimum和Maximum属性:与TrackBar控件的同名属性基本相同。
8.1.2. Value属性:用于设置或返回滑块在滚动条中所处的位置,其默认值为0。
—— 当滑块的位置值为最小值时,滑块移到水平滚动条的最左端位置,或移到垂直滚动条的顶端位置。
—— 当滑块的位置值为最大值时,滑块移到水平滚动条的最右端位置或垂直滚动条的底端位置。
8.1.3. SmallChange和LargeChange属性:这两个属性主要用于调整滑块移动的距离。
—— SmallChange属性用于控制当鼠标单击滚动条两边的箭头时,滑块滚动的值,即 Value属性增加或减小的值。
—— LargeChange属性则控制当用鼠标直接单击滚动条时滑块滚动的值。当用户按下PageUp键或PageDown键或者在滑块的任何一边单击滚动条轨迹时,Value属性将按照LargeChange属性中设置的值进行增加或减小。
8.2. 常用事件:
8.2.1. Scroll事件:该事件在用户通过鼠标或键盘移动滑块后发生。
8.2.2. ValueChanged事件:该事件在滚动条控件的Value属性值改变时发生。
8.2.3. 滚动条的使用方法与TrackBar控件基本一致,此处不再赘述。
C#:C#控件系列四(列表类控件)相关推荐
- 文本框控件TextBox(文本类控件)
文本框控件(TextBox)用于获取用户的输入数据或者显示文本.文本框控件(TextBox)通常用于可编辑文本,也可使其成为只读控件.文本框可以显示多个行,对文本换行使其符合控件大小. 文本框控件的部 ...
- C#--窗体控件(选择类控件)
文章目录 下拉组合框控件 复选框控件 单选按钮控件 数值选择控件 选择类控件有下拉组合框(ComboBox)控件.复选框(CheckBox)控件.单选按钮(RadioButton)控件.数值选择(Nu ...
- PyQt5快速开发与实战 4.5 按钮类控件 and 4.6 QComboBox(下拉列表框)
PyQt5快速开发与实战 文章目录 PyQt5快速开发与实战 4. 第4章 PyQt5 基本窗口控件 4.5 按钮类控件 4.5.1 QAbstractButton 4.5.2 QPushButton ...
- OS- -文件系统(四)
OS- -文件系统(四) 文章目录 OS- -文件系统(四) 一.文件系统的管理和优化 1.磁盘配额 2.文件系统备份 物理转储和逻辑转储 3.文件系统的一致性 4.文件系统性能 高速缓存 块提前读 ...
- 鸡啄米之VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox)
目录 一.目的: 1.点击列表框某个变量后,编辑框就显示出来这个变量名字 一.参考: 1.VS2010/MFC编程入门之二十四(常用控件:列表框控件ListBox) ①总结:good:亲测有效,适合多 ...
- 鸡啄米vc++2010系列27(列表视图控件List Control 上)
列表视图控件简介 列表视图控件List Control同样比较常见,它能够把任何字符串内容以列表的方式显示出来,这种显示方式的特点是整洁.直观,在实际应用中能为用户带来方便. 列表视图控件是对前面讲到 ...
- Adapter类控件使用之ExpandableList(可折叠式列表)的基本使用
(一)概述 本节要讲解的Adapter类控件是ExpandableListView,就是可折叠的列表,它是 ListView的子类, 在ListView的基础上它把应用中的列表项分为几组,每组里又可包 ...
- kettle中java组件_kettle系列-[KettleUtil]kettle插件,类似kettle的自定义java类控件
该kettle插件功能类似kettle现有的定义java类插件,自定java类插件主要是支持在kettle中直接编写java代码实现自定特殊功能,而本控件主要是将自定义代码转移到jar包,就是说自定义 ...
- 安卓进阶系列-05列表控件(RecyclerView)的使用
RecyclerView的使用 前言 在之前的博客中我介绍了ListView如何使用,当然那部分博客由于没有考虑基础的问题,写的跨度太大,后面我会全部重构的. ListView是一个滑动列表控件,随着 ...
最新文章
- 基于openstack的私有云构建_阿里云杨敬宇:四层技术构建基于城市场景的边缘计算...
- NFV — Overview
- playbook编写分布式lnmp
- 总结Python的几点语言特性
- 技术分享丨数据仓库的建模与ETL实践技巧
- C51单片机,点亮小灯的入门级教程
- Mentor Xpedtion partsymbolcell
- CSS 基础教程:CSS 选择器
- 计算机系学霸表白,高级暗语表白 学霸隐藏式表白
- 桌面虚拟化 | 同VDI扭打,IDV要如何补齐短板?
- 计算机基础教学中存在的问题,任职教育院校中计算机基础课程教学中存在的问题及对策...
- USB PD 等多协议快充方案
- GAMES101课程学习笔记—Lec 02:Linear Algebra 线性代数回顾
- APP开放源码第一弹《纳豆》
- Android魅族等手机下拉刷新有留白(下拉悬停)
- easyui combogrid 本地模糊搜索过滤多列
- Mac 终于有显示隐藏文件的快捷键了
- 哨兵 双向 java_SpringCloud微服务:Sentinel哨兵组件,管理服务限流和降级
- 汇通达IPO遇冷:募资缩水至3亿美元 汪建国与阿里是股东
- 面向对象的特征之一:封装性
热门文章
- matplotlib折线图与柱状图绘制在一起
- 王艾老哥------不是境况造就人,而是人造就境况。
- 网上报名考试管理系统-功能齐全安全稳定-简单易用-系统试用免费
- js验证开始日期不能大于结束日期_js如何判断开始时间不能大于结束时间
- [爱奇艺]校招笔试(2017/9/11)
- 都快2021年了,居然还有人不会MECE
- 字符串全排列算法_C#版_剑指OFFER
- 用批处理文件把.txt后缀的文件全部换成其他后缀文件
- 2022小美赛认证杯数学建模D题完整原创成品来啦!
- 世界上什么人最重要?什么事最重要?什么时间最重要?