第8章 使用标准控件.docx
- 文档编号:10198365
- 上传时间:2023-02-09
- 格式:DOCX
- 页数:19
- 大小:537.56KB
第8章 使用标准控件.docx
《第8章 使用标准控件.docx》由会员分享,可在线阅读,更多相关《第8章 使用标准控件.docx(19页珍藏版)》请在冰豆网上搜索。
第8章使用标准控件
第8章使用标准控件
学习目标:
掌握向用户显示信息的控件,如Label、LinkLabel控件等
掌握允许用户输入文本的控件,如TextBox控件
掌握允许信息列表显示的控件,如ListBox控件
掌握基于按钮的控件,如Button控件
掌握允许将其他控件进行组合的控件,如TabControl控件
学会使用DataTimePicker和MonthCalendar控件以指定格式和范围显示日期
8.1信息显示控件——Label、LinkLabel、PictureBox
8.1.1Label和LinkLabel控件
Label和LinkLabel控件可用于向用户显示描述性的文本信息,在任何的Windows应用程序中,都可以看到它们。
Label是标准的Windows标签,虽然它也支持事件,但通常使用时我们不需要为它添加任何事件处理代码。
LinkLabel派生于Label标准标签,它以超级链接的方式显示信息,如果希望用户在单击该显示信息时进入所链接到的网页,则需要为其添加事件处理代码。
此外,对于Label控件来说,它所显示的文本总是静态的,在整个Windows应用程序的生命周期中都不会改变。
但是在一些特殊情况下,使用Label控件也可显示可动态更改的信息,但是用户不可以对它直接进行编辑。
Label和LinkLabel控件有非常多的属性,大多数属性都派生于Control类。
属性名称
作用
BorderStyle
指定标签边框的样式,默认无边框
FlatStyle
控制标签显示的方式,包括Flat、Popup、Standard、System共4中样式
Image
指定在标签上要显示的图像,可以是位图(bmp)、图标(icon)等
ImageAlign
指定图像在标签中的显示位置
LinkArea
指定标签文本中显式为超链接的部分(只适用于LinkLabel控件)
LinkColor
指定链接的颜色(只适用于LinkLabel控件)
Links
由于LinkLabel控件可包含多个链接,利用这个属性可以查找所需的链接,控件会自动跟踪并显示标签中的链接,该属性不能在设计期间使用(只适用于LinkLabel控件)
LinkVisited
设置为Ture时,单击LinkLabel控件,链接将显示为另一种颜色(只适用于LinkLabel控件)
TextAlign
指定文本在标签中显示的位置
VisitedLink
Color
指定用户单击LinkLabel控件后控件的显示颜色(只适用于LinkLabel控件)
8.1.2PictureBox控件
PictureBox控件相当于用来承载图像的容器,通过设置它的Image属性,可以显示位图、图标、图元文件、JPEG、GIF、PNG等图像文件。
通过设置它的BorderStyle书库行,可以设置图形框的边界,默认为没有边界,但可以指定为平面、单线条边界或三维边界。
8.2信息输入与提取控件——TextBox、RichTextBox
在希望用户输入设计人员在设计阶段不知道的信息(例如登录用户名和密码)时,应使用文本框控件。
文本框控件的主要作用就是让用户输入信息,可以输入任何字符,也可以限制只能输入数值。
.NETFramework提供了两个用来提取用户输入信息的控件:
TextBox和RichTextBox。
它们继承于基类System.Windows.Forms.TextBoxBase,而TextBoxBase派生于Control类。
8.2.1TextBox控件
TextBox控件提供了最基本的文本输入和编辑功能。
如果设置TextBox控件的【PasswordChar】属性值,如设置为“*”,则用户在文本框中输入的信息显示为由符号“*”构成的字符串,这在保护用户登录密码等信息时很有用。
属性名称
作用
CausesValidation
当该属性设置为True且控件获得了焦点时,引发Validating和Validated事件。
通过处理这两个事件,以验证失去焦点的控件中的数据有效性,但这有可能使控件永远都无法获取焦点
CharacterCasing
设置为Normal时,不对控件中的文本进行任何转换;设置为Lower时,将控件中的所有文本转换为小写;设置为Upper时,将控件中的所有文本转换为大写
MaxLength
指定控件中可输入字符的最大长度,如果设置为0,则表示最大字符长度仅受限于可用内存大小
Multiline
指定该控件是否可显示多行文本,如果设置为True,通常将WordWrap属性设置为Ture
PasswordChar
指定是否用密码替换控件中的输入字符,如果属性Multiline设置为true,则该属性不可用
ReadOnly
指定控件中的文本是否为只读
ScrollBars
指定当Multiline设置为true时,多行文本框是否显示滚动条
SelectedText
选中控件中的文本,可用于提取输入信息
SelectionLength
设置选中控件中的字符数,如果值超出了控件中的总字符数,则控件将其自动设置为字符总数减去SelectionStart的值
SelectionStart
选中控件中文本的开头
WordWrap
指定在多行文本框中,如果一行的宽度超出了控件的宽度,其文本是否自动换行
8.2.2RichTextBox控件
RichTextBox控件同样从TextBox类继承,相对于TextBox控件,它的功能更为强大,通过它的一些属性,可将控件中的文本变为粗体或斜体、改变文本的颜色、创建上标或下标、调整段落的左右缩进值、使用悬挂式缩进以及动态地向该控件中嵌入位图(bmp)、图标(ico)、MicrosoftExcel电子表格和MicrosoftWord文档等对象,也即支持RichText格式(rtf)。
RichTextBox控件通常结合通用对话框一起使用。
属性名称
作用
CanRedo
设置为true时,可重复最近一次的操作
CanUndo
设置为true时,可撤销最近一次的操作
RedoActionName
包含通过Redo方法执行的操作名称
DetectUrls
设置为True时,可以使控件检测并格式化URL
Rtf
对应于TextBox控件的Text属性,但可以包含RTF格式的文本
SelectedRtf
获取或设置控件中被选中的RTF文本,如果将该文本信息复制到另外一个应用程序中,例如Word,该文本会保留所有的格式化信息
SelectedText
获取或设置被选中的文本,但与SelectedRtf不同的是,所有的格式化信息将会丢失
SelectionAlignment
设置选中文本的对齐方式
SelectionBullet
确定选中的文本是否格式化为项目符号的格式,或使用它插入、删除项目符号
BulletIndex
指定项目符号的缩进值,单位为像素
SelectionColor
修改选中文本的颜色
SelectionFont
修改选中文本的字体
SelectionLength
设置或获取选中文本的长度
SelectionType
该属性包含选中文本的信息,可以确定是选择了OLE对象还是仅仅是文本信息
ShowSelectionMargin
设置控件左侧是否显示页边距
UndoActionName
当用户撤销某个操作时,该属性获取动作的名称
SelectionProtected
设置为true时,指定不修改文本的某些部分
8.3信息列表显示控件——ListBox、ComboBox
用户界面通常需要向用户提供多选项的动态列表,如果在设计期间,设计人员并不知道用户可能选择的选项个数,就应考虑使用列表框。
.NET提供了ListBox和ComboBox这两种控件来实现列表框功能,但它们又有所不同。
8.3.1ListBox控件
ListBox控件可以调整大小,同时显示一定数目的列表选项,通过配置它的属性,可以允许用户选择其中的一个或多个选项,它甚至可以以多列的方式来显示选项。
不过,它相对于ComboBox控件的最大特点在于它可以滚动列表选项,这也就意味着2个选项和20个选项都可以只占用相同的控件大小。
ListBox控件继承于System.Windows.Forms.ListControl类,拥有其所有属性。
除了ListBox控件外,.NET还提供了派生于ListBox的CheckedListBox控件,该控件除了文本字符串以外,还附带有一个选中标记。
属性名称
作用
SelectedIndex
该属性值表示列表框中选中选项的基于0的索引值,如果选中了多个选项,则值为的一个选项的索引值
ColumnWidth
在包含多个列的列表框中,该属性指定列的宽度
Items
使用该属性可增加或删除列表框中的选项
MultiColumn
对于具有多个列的列表框,利用该属性可获取与设置列的个数
SelectedIndices
该属性是一个集合,包含列表框中所有选项的索引
SelectedItem
该属性包含列表框中选中的选项,但只能选择一个
SelectedItems
包含当前选中的所有选项,是一个集合
SelectionMode
设置选择模式,None表示不能选择任何选项;One表示一次只能选择一个选项;MulitiSimple表示可以选择多个选项;MulitExtended表示可以选择多个选项,但必须结合使用Ctrl键和Shift键
Sorted
设置为true时,可对列表框中该属性包含的选项按字母进行排序
Text
许多控件都拥有Text属性,但列表框控件的Text属性与其他控件相比有很大不同。
如果设置列表框的Text属性,它将搜索匹配该文本的选项,并选中该选项;如果获取Text属性,返回值将是列表框中的第1个选项。
如果SelectionMode属性设置为None,该属性就不可用
CheckedIndicies
该属性是一个集合,包含CheckedListBox中状态是checked或indeterminate的所有选项(仅适用于CheckedListBox控件)
CheckedItems
该属性是一个集合,包含CheckedListBox中状态是checked或indeterminate的所有选项(仅适用于CheckedListBox控件)
CheckOnClick
该属性设置为true时,用户单击它时便改变它的状态(仅适用于CheckedListBox控件)
ThreeDCheckBoxes
设置这个属性,可以选择平面或正常的CheckBoxes(仅适用于CheckedListBox控件)
方法名称
作用
ClearSelected
清除列表框中的所有选项
FindString
查找列表框中第1个以指定字符串开头的字符串
FindStringExact
与FindString相似,但必须匹配整个字符串
GetSelected
返回一个表示是否选择一个选项的值
SetSelected
设置或清除选项
ToString
返回当前选中的选项
GetItemChecked
返回一个表示选项是否被选中的值(仅适用于CheckedListBox控件)
GetIemCheckState
返回一个表示选项的选中状态的值(仅适用于CheckedListBox控件)
SetItemChecked
设置指定为选中状态的选项(仅适用于CheckedListBox控件)
SetItemCheckState
设置选项的选中状态(仅适用于CheckedListBox控件)
8.3.2ComboBox控件
ComboBox控件与ListBox控件很相似,除了视觉效果上的差别以外,ComboBox控件最显著的特点是可以当作带有下拉三角按钮的TextBox控件来使用,这使得用户可以手动输入一个在下拉列表中没有列出的选项。
属性名称
作用
DroppedDown
指出ComboBox控件是否处于下拉状态
MaxDropDownItems
设置下拉列表中选项的最大数目,以及是否出现滚动条
MaxLength
设置用户在下拉列表中可以输入文本的最大长度
SelectedText
返回下拉列表中当前选中的文本
SelectionLength
返回下拉列表中选中文本的长度
Style
设置下拉列表的显示类型。
设置为DropDown,则文本可编辑,用户必须单击来打开选项列表;设置为DropDownList,则文本不可编辑;设置为Simple,则文本可编辑,且下拉列表呈下拉状态
Text
返回下拉列表中当前正在编辑的文本
8.4基于按钮的控件——Button、CheckBox、RadioButton
控件Button、CheckBox和RadioButton对应于大家非常熟悉的软件操作界面上的按钮、复选框和单选按钮,它们都是基于按钮的控件,用于触发事件或向应用程序传递用户的提交信息,它们都继承于System.Windows.Forms.ButtonBase类。
8.4.1Button控件
Button控件是基于事件的控件,它通常用来完成以下3种任务:
关闭对话框,例如“确定”按钮和“取笑”按钮;对用户输入的信息进行某种操作,例如“提交”或“登录”按钮,将用户登录信息传递给应用程序进行验证;打开一个对话框或执行某个应用程序,例如“选项”按钮或“帮助”按钮。
属性名称
作用
FlatStyle
通过该属性,可设置按钮的样式。
如果将按钮设置为PopUp,则该按钮将显示为平面,直到用户将鼠标移到它上面为止,此时,按钮将弹出,显示为正常的3D外观
Enabled
设置为false时,按钮将灰显,单击它将不起任何作用
Image
指定按钮上显示的图像,可以是位图、图标等
ImageAlign
通过这个属性,可设置图像在按钮上的显示位置
8.4.2CheckBox控件
CheckBox控件在用户界面上显示为一个标签,左边是带有标记的小方框,当希望用户可以选择一个或多个选项时,就应使用复选框,例如让用户选择自己的兴趣爱好等。
CheckBox控件有两个最常用的事件:
CheckedChanged事件:
当复选框的Checked属性改变时,该事件被引发。
注意在复选框中,当ThreeState属性为true时,单击复选框不会改变Checked属性,而当复选框从Checked状态变成Indeterminate状态时,将引发该事件。
CheckedStateChanged事件:
当属性CheckState改变时,该事件被引发。
CheckState的值可以为Checked或Unchecked,只要Checked属性改变便引发该事件,而且当复选框从Checked状态变成Indeterminate状态时,将同样引发该事件。
属性名称
作用
CheckState
设置CheckBox控件的状态。
设置为Checked时,表示选中;设置为Unchecked时,表示未选中;设置为Indeterminate时,则复选框呈灰色显示,表示当前设置无效
ThreeState
该属性设置为false时,不能将属性CheckState设置为Indeterminate,如果需要则只能在代码中实现
8.4.3RadioButton控件
在需要用户从多个选项中互斥地选择其中一个时,设计人员可考虑在用户界面上使用单选按钮。
RadioButton控件通常是成组使用的,放在一个GroupBox容器内,当用户选中容器内的一个单选按钮时,其他单选按钮会自动改变自己的状态,以反映容器内唯一被选中的选项。
如果不将RadioButton控件放在一个GroupBox容器内,则用户界面上任何时刻只能有一个单选按钮处于被选中状态。
RadioButton控件通常只使用一个事件,即CheckChanged事件,当单选按钮的选中状态改变时便引发该事件,它与Click事件有很大差别。
因为连续两次或多次单击单选按钮只会改变Checked属性一次,且只改变以前未选中单选按钮的Checked属性。
如果单选按钮的AutoCheck属性设置为false,则该按钮根本不会被选中,只是引发Click事件而已。
属性名称
作用
Appearance
设置RadioButton控件的显示样式。
可以显示为一个圆形选中标签,放在左边、中间或右边,或者显示为标准的单选按钮。
当显示为按钮时,控件被选中时显示为按下状态,否则显示为弹起状态
AutoCheck
如果值为true,用户单击控件时,会显示为一个选中标记,否则就必须在Click事件处理程序中由设计人员通过编码来检查单选按钮的状态
CheckAlign
设置单选按钮的对齐形式
Checked
值为单选按钮的状态,选中或未选中
8.5滑动条与进度条——TrackBar、ProgressBar
在播放音频或视频时,通过滑动条可轻松控制音频的音量或者视频的播放进度;在安装程序时,通过进度条可查看当前软件的安装状况。
.NETFramework提供了相应的控件——TrackBar和ProgressBar。
TrackBar继承于基类System.Windows.Forms.TrackBar,ProgressBar继承于基类System.Windows.Forms.ProgressBar。
8.6选项卡与列表视图——TabControl、ListView
用户界面上通常要展示大量的信息,使用选项卡或列表视图的方式,可以对这些信息进行有效地组织和分类,保持用户界面的整洁和美观,创建高效的Windows应用程序。
8.6.1TabControl控件
控件TabControl提供了一种非常简洁的方式,来将用户界面上需要展示的信息分成一个一个的类别,并通过选项卡来进行显示,它的工作方式和GroupBox非常相似,但却更加复杂。
可以向窗体中根据需要添加任意多个选项卡,并通过单击选项卡上的标签名来在不同选项卡之间进行切换。
控件TabControl很容易使用,在控件TabControl中,每个标签都是TabPage对象,只需要向每个TabPage中添加所要显示的
TabControl.Pages集合就可以了。
一旦创建了标签,就可以像从工具箱向窗体中添加控件一样,向选项卡中添加各种所需的控件。
属性名称
作用
Alignment
控制标签在选项中的显示位置,默认为选项卡的顶部
Appearance
控制选项卡标签的显示样式,可以为一般按钮样式或FlatButton(平面按钮)样式
HotTrack
值为True时,当鼠标光标滑过选项卡上的标签时,外观将发生改变
Multiline
设置标签是否可以多行显示
RowCount
返回当前显示的标签行数
SelectedIndex
返回或设置选中标签的索引
SelectedTab
返回或设置选中的标签,但只能在TabPages的实例化对象中使用
TabCount
返回标签的总数
TabPages
TabPages对象集合,可在其中添加或删除TabPages对象
8.6.2ListView控件
ListView(列表视图)控件通常和TreeView控件结合使用,以树状视图的方式向用户展示一系列结构化的信息,用户可以对这些信息和显示方式进行控制,最典型应用是用于导航计算机中文件夹的视图。
TreeView控件中显示的每个数据项都和一个TreeNode对象关联,通过TreeNode对象的Nodes集合属性来引用该节点下的子节点列表,它返回一个TreeNodeCollection类型对象。
在该对象中提供了可以从TreeView控件中添加或者删除节点的方法:
Add和Remove。
也可以利用Clear方法来清空Nodes属性集,Count属性则返回在TreeNodeCollection对象中节点的数目。
程序在运行时,TreeView控件的层次结构中的任何节点都可以扩展或收缩来显示或隐藏它的子节点,用户可以通过单击节点前面的“+”或“-”来实现。
TreeView控件的常用属性
属性名称
作用
CheckBoxes
指定是否在节点旁显示复选框
HotTracking
指定当鼠标移到节点上时,节点是否显示为超链接样式
ImageList
把作为图像库的ImageList对象和所有TreeView使用的图像联系起来
ImageIndex
使用索引号来引用存储在ImageList对象中的图像
Indent
指定每个子节点层的缩进度
Nodes
获取TreeView控件的树节点集
PathSeparator
获取或设置树节点所要使用的分隔字符串
SelectedImageIndex
获取或设置在ImageList控件中的图像索引号
SelectedNode
获取或设置在TreeView控件中当前选中的树节点
ShowLines
设置是否在TreeView节点间显示线
ShowPlusMinus
指定是否在节点旁显示“+”或“-”号
ShowRootLines
指定是否在根节点之间显示线
ListView控件
ListView控件用于显示数据项列表,每个数据项都和一个具体的ListViewItem对象相关联,这些对象存储在【Items】属性集合中,通过Add和Remove方法来添加或移除集合中的对象。
ListView控件包含一个【SubItems】属性集合,它用来存储
ListViewSubItems对象,当ListView控件的【View】属性设置成
View.Details时,该ListViewSubItems对象就会显示出来。
也就说,
ListViewSubItems对象描述某个列表的详细信息。
表8-15列出了ListView控件的常用属性。
属性名称
作用
Activation
控制用户在列表视图中激活选项的方式。
Standard是用户为自己的机器选择的值;OneClick表示用户单击某个选项时将其激活;TwoClick表示用户双击某个选项时将其激活
Alignment
控制列表视图中数据选项的对齐方式,包含Default、Left、Top和SnapToGrid这4种方式
AllowColumnReorder
指定是否允许用户改变列表视图中列的顺序,一般情况下禁止
AutoArange
指定列表选项是否根据Alignment属性的设置自动对齐
CheckedIndices
访问索引集合
CheckedItems
访问选项集合
Columns
访问或设置列表视图中的列
FocusedItem
列表视图中有焦点的选项的集合,如果没有任何选项,则值为null
FullRowSelect
值为true时,单击一个选项便会选中列表视图中的所有选项;值为false时,则只有选项本身被选中
GridLines
在View属性设置为Details时,该属性有意义,设置为true时,则列表视图中行与列之间会绘制网格线
HeaderStyle
设置标签的显示方式。
设置为Clickable时,列标签显示为一个按钮;设置为NonClickable时,列标签不响应用户鼠标单击;设置为None时,不显示列标签
Ho
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第8章 使用标准控件 使用 标准 控件