C#窗体控件更新(五)
列表类控件
十、ListBox 控件
ListBox 控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。在列表框中,用户
一次可以选择一项,也可以选择多项。
1、常用属性:
(1) Items属性:用于存放列表框中的列表项,
是一个集合。通过该属性,可以添加列表项、
移除列表项和获得列表项的数目。
(2)MultiColumn 属性:用来获取或设置一
个值,该值指示ListBox是否支持多列。值
为 true 时表示支持多列,值为 false 时不支持
多列。当使用多列模式时,可以使控件得以显
示更多可见项,如图9-19 所示。
(3)ColumnWidth 属性:用来获取或设置多
列 ListBox控件中列的宽度。
(4)SelectionMode属性:用来获取或设置在ListBox控件中选择列表项的方法。当 SelectionMode属性设
置为 SelectionMode.MultiExtended 时,按下 Shift 键的同时单击鼠标或者同时按 Shift 键和箭头键之一(上
箭头键、下箭头键、左箭头键和右箭头键),会将选定内容从前一选定项扩展到当前项。按 Ctrl 键的同时
单击鼠标将选择或撤销选择列表中的某项;当该属性设置为 SelectionMode.MultiSimple 时,鼠标单击或按-空格键将选择或撤销选择列表中的某项;该属性的默认值为SelectionMode.One,则只能选择一项。
(5)SelectedIndex属性:用来获取或设置ListBox控件中当前选定项的从零开始的索引。如果未选定任何
项,则返回值为1。对于只能选择一项的ListBox控件,可使用此属性确定ListBox中选定的项的索引。如
果 ListBox 控件的 SelectionMode 属性设置为 SelectionMode.MultiSimple 或 SelectionMode.MultiExtended,
并在该列表中选定多个项,此时应用SelectedIndices来获取选定项的索引。
(6)SelectedIndices。该属性用来获取一个集合,该集合包含 ListBox 控件中所有选定项的从零开始的索
引。
(7)SelectedItem属性:获取或设置ListBox中的当前选定项。
(8)SelectedItems属性:获取 ListBox控件中选定项的集合,通常在ListBox控件的SelectionMode属性值
设置为SelectionMode.MultiSimple或SelectionMode.MultiExtended(它指示多重选择ListBox)时使用。
(9)Sorted属性:获取或设置一个值,该值指示ListBox控件中的列表项是否按字母顺序排序。如果列表
项按字母排序,该属性值为true;如果列表项不按字母排序,该属性值为false。默认值为false。在向已排
序的 ListBox控件中添加项时,这些项会移动到排序列表中适当的位置。
(10)Text 属性:该属性用来获取或搜索 ListBox 控件中当前选定项的文本。当把此属性值设置为字符串
值时,ListBox 控件将在列表内搜索与指定文本匹配的项并选择该项。若在列表中选择了一项或多项,该
属性将返回第一个选定项的文本。
(11)ItemsCount属性:该属性用来返回列表项的数目。
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基本一致。
(2)SetSelected方法:用来选中某一项或取消对某一项的选择,调用格式及功能如下。
[格式]:
ListBox对象.SetSelected(n,l);
[功能]:如果参数 l 的值是 true,则在 ListBox 对象指定的列表框中选中索引为 n 的列表项,如果参数l 的
值是 false,则索引为n 的列表项未被选中。
(3)Items.Add方法:用来向列表框中增添一个列表项,调用格式及功能如下。
[格式]:
ListBox对象.Items.Add(s);
[功能]:把参数s添加到“listBox对象”指定的列表框的列表项中。
(4)Items.Insert方法:用来在列表框中指定位置插入一个列表项,调用格式及功能如下。
[格式]:
ListBox对象.Items.Insert(n,s);
[功能]:参数n代表要插入的项的位置索引,参数 s代表要插入的项,其功能是把s插入到“listBox对象”
指定的列表框的索引为n的位置处。
(5)Items.Remove方法:用来从列表框中删除一个列表项,调用格式及功能如下。
[格式]:
ListBox对象.Items.Remove(k);
[功能]:从 ListBox对象指定的列表框中删除列表项s。
(6)Items.Clear方法:用来清除列表框中的所有项。其调用格式如下:
ListBox对象.Items.Clear();
该方法无参数。
(7)BeginUpdate方法和EndUpdate方法:这两个方法均无参数,调用格式分别如下:
ListBox对象.BeginUpdate();
ListBox对象.EndUpdate();
这两个方法的作用是保证使用 Items.Add 方法向列表框中添加列表项时,不重绘列表框。即在向列表框添
加项之前,调用BeginUpdate方法,以防止每次向列表框中添加项时都重新
绘制 ListBox 控件。完成向列表框中添加项的任务后,再调用 EndUpdate 方法使 ListBox 控件重新绘制。
当向列表框中添加大量的列表项时,使用这种方法添加项可以防止在绘制 ListBox 时的闪烁现象。一个例
子程序如下:
publicvoidAddToMyListBox()
{listBox1.BeginUpdate();
for(intx=1;x<5000;x++)
{
listBox1.Items.Add("Item"+x.ToString());
}
listBox1.EndUpdate();
}
ListBox控件常用事件有Click和 SelectedIndexChanged,SelectedIndexChanged事件在列表框中改变选中项
时发生。
十一 、ComboBox 控件
ComboBox 控件又称组合框,在工具箱中的图标为。默认情况下,组合框分两个部分显示:顶部是一个允
许输入文本的文本框,下面的列表框则显示列表项。可以认为ComboBox就是文本框与列表框的组合,与
文本框和列表框的功能基本一致。与列表框相比,组合框不能多选,它无 SelectionMode 属性。但组合框
有一个名为DropDownStyle的属性,该属性用来设置或获取组合框的样式,其取值及含义如表9-10所示。
组合框的各种样式如图9-22 所示, 左边的组合框能够通过文本框输入文本,中间的组合框则不能输入文本,
只能选择列表项。
12、CheckedListBox 控件
CheckedListBox控件又称复选列表框,它扩展了ListBox控件,它几乎
能完成列表框可以完成的所有任务,并且还可以在列表项旁边显示复
选标记。两种控件间的其他差异在于,复选列表框只支持
DrawMode.Normal,并且复选列表框只能有一项选定或没有任何选定。此处需要注意一点:选定的项是指
窗体上突出显示的项,已选中的项是指左边的复选框被选中的项。复选列表框的样式如图9-23所示。
除具有列表框的全部属性外,它还具有以下属性。
(1)CheckOnClick属性:获取或设置一个值,该值指示当某项被选定时
是否应切换左侧的复选框。如果立即切换选中标记,则该属性值为true;
否则为false。默认值为false。
(2)CheckedItems 属性:该属性是复选列表框中选中项的集合,只代表
处于CheckState. Checked或CheckState.Indeterminate状态的那些项。 该集
合中的索引按升序排列。
(3)CheckedIndices 属性:该属性代表选中项(处于选中状态或中间状
态的那些项)索
引的集合。
C#窗体控件更新(五)相关推荐
- 使用 .NET 框架轻松开发完美的 Web 窗体控件
作者:David S. Platt 出自:微软 本文假定您熟悉 Visual Basic .NET.C# 和 HTML 下载本文的代码: WebC.exe (274KB) 摘要 预建的自定义控件可 ...
- C#学习(十五)——窗体控件用法大全
C#控件及常用设计整理 1.窗体 1.1.常用属性** (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2) WindowState属性: 用来获取或设置窗 ...
- C#多线程窗体控件安全访问实现方法
C# 2.0 为了线程安全,不充许子线程直接访问窗体中的控件 如果在子线程中直接访问说窗体控件,编译器会提示,控件不是 由该线程创建的. 那么在子线程中如何访问窗体中的控件呢? 在窗体的构造函数中加入 ...
- C#如何解决对ListView控件更新以及更新时界面闪烁问题
第一个问题:如何更新ListView控件内容 很多时候运行窗体程序时,由于程序中使用了多线程加之操作不当,所以在对控件操作时会出现下面这样的异常: 这是因为我们在窗体中添加的控件都有属于自己的线程,所 ...
- VB Vista窗体控件下载(coolBoySkin1.3版)
coolBoySkin1.3版 更新内容: 1.加入了进度条控件(2种风格) 2.加入了单选按钮控件(vista和xp2种风格) 3.加入了frame控件(xp样式) 4.窗体控件增加了控制菜单,增加 ...
- 【引用】窗口处理技巧大全 vb(窗体控件)
Vb提供了API函数SetWindowLong和GetWindowLong,可以让我们很容易取得对窗口的操作:通过对窗口属性的操作,可以更改窗口的显示风格.有些看来是正常情况下无法实现的窗口,现在你可 ...
- vba数据类型,运算符,内置函数,循环判断语句,窗体控件
文章目录 VBA基本数据类型 示例代码 声明常量,运算符和表达式 内置函数 代码 可视化编程 判断语句 循环语句 窗体控件,窗体的加载卸载 listbox,checkbox,combobox VBA基 ...
- viewstate 解码 php,.NET_asp.net中ViewState的用法详解,在web窗体控件设置为runat = serv - phpStudy...
asp.net中ViewState的用法详解 在web窗体控件设置为runat = "server",这个控件会被附加一个隐藏的属性_ViewState,_ViewState存放了 ...
- 主要的窗体控件的概述
控件是包含在窗体上的对象,是构成用户界面的基本元素.控件也是设计Windows窗体引用程序的重要工具,使用控件可以减少程序设计中大量重复性的工作,有效的提高设计效率.控件通常是用来完成特定的输入输出功 ...
最新文章
- java操作跨页的word cell,利用itext 生成pdf,处理cell 跨页问题 [转]
- IOS OC项目的单例模式
- LeetCode 404. 左叶子之和(递归)
- mongodb 的命令操作(转)
- Spring详解(四)------注解配置IOC、DI
- 小米申请雷军签名商标获批
- linux gcc百度经验,详解Linux安装GCC方法
- VS中的scanf_s函数和scanf
- 苹果CMS-v10系统标签
- 黑眼圈大神程序员用5000字带你通透读懂Elasticsearch的注意事项
- 轮廓(查找和绘制轮廓、轮廓的表达与组织、轮廓的特性)
- 对接飞鹅接口一直提示未注册
- 阿里api网关接口客户端demo,java实现源码,其他语言可参考
- mysql快速复制数据库
- 姚明仅得7分13篮板 火箭力取开拓者2比1领先
- JS上传文件(base64字符串和二进制文件流)
- 气液滑环与其他滑环的工作原理有什么区别
- HTML基础知识(四)——浮动
- Mybatis实现insert获取自增id
- cf 877D Olya and Energy Drinks