ListBox控件又称列表框,它在工具箱中的图标为,它显示一个项目列表供用户选择。
在列表框中,用户一次可以选择一项,也可以选择多项。
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. 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 时的闪烁现象。
ComboBox控件又称组合框,默认情况下,组合框分两个部分显示:
顶部是一个允许输入文本的文本框,下面的列表框则显示列表项。
可以认为ComboBox就是文本框与列表框的组合,与文本框和列表框的功能基本一致。
与列表框相比,组合框不能多选,它无SelectionMode 属性。
但组合框有一个名为DropDownStyle的属性,该属性用来设置或获取组合框的样式。
CheckedListBox控件又称复选列表框,它扩展了ListBox控件,它几乎能完成列表框可以完成的所有任务,并且还可以在列表项旁边显示复选标记。
两种控件间的其他差异在于,复选列表框只支持DrawMode.Normal,并且复选列表框只能有一项选定或没有任何选定。
此处需要注意一点:选定的项是指窗体上突出显示的项,已选中的项是指左边的复选框被选中的项。除具有列表框的全部属性外,它还具有以下属性。
3.1.1. CheckOnClick属性:获取或设置一个值,该值指示当某项被选定时是否应切换左侧的复选框。
—— 如果立即切换选中标记,则该属性值为true;
—— 否则为false。默认值为false。
3.1.2. CheckedItems 属性:该属性是复选列表框中选中项的集合,只代表处于CheckState.Checked或CheckState.Indeterminate状态的那些项。 该集合中的索引按升序排列。
3.1.3. CheckedIndices属性:该属性代表选中项(处于选中状态或中间状态的那些项)索引的集合。
PictureBox控件又称图片框,常用于图形设计和图像处理应用程序,在该控件中可以加载的图像文件格式有:
位图文件(.Bmp)、图标文件(.ICO)、图元文件(.wmf)、.JPEG和.GIF 文件。
下而仅介绍该控件的常用属性和事件。
4.1.1. Image属性:用来设置控件要显示的图像。把文件中的图像加载到图片框通常采用以下三种方式。
—— 设计时单击Image属性,在其后将出现【…】按钮,单击该按钮将出现一个【打开】对话框,在该对话框中找到相应的图形文件后单击【确定】按钮。产生一个Bitmap类的实例并赋值给Image属性。形式如下:
—— Bitmap p= new Bitmap(图像文件名);
—— pictureBox对象名.Image=p;
—— 通过Image.FromFile方法直接从文件中加载。形式如下:
—— pictureBox对象名.Image=Image.FromFile(图像文件名);
4.1.2. SizeMode属性:用来决定图像的显示模式。
Timer控件又称定时器控件或计时器控件,该控件的主要作用是按一定的时间间隔周期性地触发一个名为Tick的事件,
因此在该事件的代码中可以放置一些需要每隔一段时间重复执行的程序段。在程序运行时,定时器控件是不可见的。
5.1.1. Enabled 属性:用来设置定时器是否正在运行。
—— 值为 true 时,定时器正在运行,
—— 值为 false 时,定时器不在运行。
5.1.2. Interval属性:用来设置定时器两次Tick事件发生的时间间隔,以毫秒为单位。如它的值设置为500,则将每隔0.5秒发生一个Tick事件。
5.2.1. Start方法:用来启动定时器。调用的一般格式如下:
—— Timer控件名.start();
5.2.2. Stop方法:用来停止定时器。调用的一般格式如下:
—— Timer控件名.stop();
定义器控件响应的事件只有Tick,每隔Interval时间后将触发一次该事件。
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.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控件能响应很多事件,但一般很少使用。
TrackBar控件又称滑块控件、跟踪条控件。
该控件主要用于在大量信息中进行浏览,或用于以可视形式调整数字设置。
TrackBar控件有两部分:缩略图(也称为滑块)和刻度线。
缩略图是可以调整的部分,其位置与Value 属性相对应。
刻度线是按规则间隔分隔的可视化指示符。
跟踪条控件可以按指定的增量移动,并且可以水平或者垂直排列。
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属性:用来获取或设置一个值,该值指示如何显示跟踪条上的刻度线。
其使用滚动条(ScrollBar)是大部分Windows应用程序中都具有的控件,是 Windows界面的一种常见元素,通常分为水平滚动条(HscrollBar)和垂直滚动条(VscrollBar)。
这两个控件主要用于在应用程序或控件中水平或垂直滚动,以方便在较长的列表中或大量信息中转移。
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.1. Scroll事件:该事件在用户通过鼠标或键盘移动滑块后发生。
8.2.2. ValueChanged事件:该事件在滚动条控件的Value属性值改变时发生。
8.2.3. 滚动条的使用方法与TrackBar控件基本一致,此处不再赘述。