今天结合自己以前搜集的一些资料简单总结下Winform窗体常用的控件使用及其属性、方法、事件等……
一、按钮(Button)控件
几乎存在于所有Windows对话框中,是Windows应用程序中最常用的控件之一。按钮控件允许用户通过单击来执行操作。按钮最重要的事件,也是最常用的事件就是Click。当用户单击按钮时,都会调用Click事件。
按钮的常用属性和事件:
1、常用属性
(1)DialogResult属性:当使用ShowDialog方法显示窗体时,可以使用该属性设置当用户按了该按钮后,
ShowDialog方法的返回值。值有:OK、Cancel、Abort、Retry、Ignore、Yes、No等。
(2)Image属性:用来设置显示在按钮上的图像。
(3)FlatStyle属性:用来设置按钮的外观。
2、常用事件:
(1)Click事件:当用户用鼠标左键单击按钮控件时,将发生该事件。
(2)MouseDown事件:当用户在按钮控件上按下鼠标按钮时,将发生该事件。
(3)MouseUp事件:当用户在按钮控件上释放鼠标按钮时,将发生该事件。
二、文本框控件(textBox)
在希望用户输入程序员在设计阶段不知道的文本(如用户的姓名)时,应使用文本框。文本框的主要用途是让用户输入文本,用户可以输入任何字符,也可以限制用户只输入数值。
1、主要属性:
(1)Text属性:Text属性是文本框最重要的属性,因为要显示的文本就包含在Text属性中。默认情况下,
最多可在一个文本框中输入2048个字符。如果将MultiLine属性设置为true,则最多可输入32KB 的文本。
Text属性可以在设计时使用【属性】窗口设置,也可以在运行时用代码设置或者通过用户输入来设置。可
以在运行时通过读取Text属性来获得文本框的当前内容。
(2)MaxLength 属性:用来设置文本框允许输入字符的最大长度,该属性值为 0 时,不限制输入的字符
数。
(3)MultiLine 属性:用来设置文本框中的文本是否可以输入多行并以多行显示。值为 true 时,允许多行
显示。值为false时不允许多行显示,一旦文本超过文本框宽度时,超过部分不显示。
(4)HideSelection属性:用来决定当焦点离开文本框后,选中的文本是否还以选中的方式显示,值为true,
则不以选中的方式显示,值为 false将依旧以选中的方式显示。
(5)ReadOnly属性:用来获取或设置一个值,该值指示文本框中的文本是否为只读。值为 true时为只读,
值为 false时可读可写。
(6)PasswordChar 属性:是一个字符串类型,允许设置一个字符,运行程序时,将输入到 Text 的内容全
部显示为该属性值,从而起到保密作用,通常用来输入口令或密码。
(7) ScrollBars属性: 用来设置滚动条模式, 有四种选择: ScrollBars.None (无滚动条), ScrollBars.Horizontal
(水平滚动条),ScrollBars.Vertical(垂直滚动条),ScrollBars.Both(水平和垂直滚动条)。
注意:只有当MultiLine属性为true时,该属性值才有效。在WordWrap属性值为true时,
水平滚动条将不起作用
(8)SelectionLength属性:用来获取或设置文本框中选定的字符数。只能在代码中使用,值为0 时,表示
未选中任何字符。
(9)SelectionStart属性:用来获取或设置文本框中选定的文本起始点。只能在代码中使用,第一个字符的
位置为0,第二个字符的位置为1,依此类推。
(10)SelectedText 属性:用来获取或设置一个字符串,该字符串指示控件中当前选定的文本。只能在代
码中使用。
(11)Lines:该属性是一个数组属性,用来获取或设置文本框控件中的文本行。即文本框中的每一行存放
在 Lines数组的一个元素中。
(12)Modified:用来获取或设置一个值,该值指示自创建文本框控件或上次设置该控件的内容后,用户
是否修改了该控件的内容。值为true表示修改过,值为 false表示没有修改过。
(13)TextLength属性:用来获取控件中文本的长度。
(14)WordWrap:用来指示多行文本框控件在输入的字符超过一行宽度时是否自动换行到下一行的开始,
值为 true,表示自动换到下一行的开始,值为false表示不自动换到下一行的开始。
2、常用方法:
(1)AppendText方法:把一个字符串添加到文件框中文本的后面,调用的一般格式如下:
文本框对象.AppendText(str)
参数 str是要添加的字符串。
(2)Clear方法:从文本框控件中清除所有文本。调用的一般格式如下:
文本框对象.Clear()该方法无参数。
(3)Focus方法:是为文本框设置焦点。如果焦点设置成功,值为 true,否则为false。调用的一般格式如
下: 文本框对象.Focus()该方法无参数。
(4)Copy方法:将文本框中的当前选定内容复制到剪贴板上。调用的一般格式如下:
文本框对象.Copy()该方法无参数。
(5)Cut方法:将文本框中的当前选定内容移动到剪贴板上。调用的一般格式如下:
文本框对象.Cut()该方法无参数。
(6)Paste方法:用剪贴板的内容替换文本框中的当前选定内容。调用的一般格式如下:
文本框对象.Paste()该方法无参数。
(7)Undo 方法:撤销文本框中的上一个编辑操作。调用的一般格式如下:
文本框对象.Undo()该方法无参数。
(8)ClearUndo方法:从该文本框的撤销缓冲区中清除关于最近操作的信息,根据应用
程序的状态,可以使用此方法防止重复执行撤销操作。调用的一般格式如下:
文本框对象.ClearUndo()该方法无参数。
(9)Select方法:用来在文本框中设置选定文本。调用的一般格式如下:
文本框对象.Select(start,length)
该方法有两个参数,第一个参数start用来设定文本框中当前选定文本的第一个字符的位
置,第二个参数length用来设定要选择的字符数。
(10)SelectAll方法:用来选定文本框中的所有文本。调用的一般格式如下:
文本框对象.SelectAll()该方法无参数。
3、常用事件:
(1)GotFocus事件:该事件在文本框接收焦点时发生。
(2)LostFocus事件:该事件在文本框失去焦点时发生。
(3)TextChanged事件:该事件在Text属性值更改时发生。无论是通过编程修改还是用户交互更改文本框的 Text属性值,均会引发此事件。
三、RichTextBox (富文本框)控件
RichTextBox控件不仅允许输入和编辑文本,与TextBox控件相比多了很多功能,同时还提供了标准 TextBox 控件未具有的、更高级的指定格式的许多功能。
它能以 rtf 格式和普通 ASCII 文本格式这两种形式打开和保存文件。可以使用控件的方法(LoadFile 和 SaveFile)直接读写文件,或使用与 Visual Basic 文件输入/输出语句联结的、诸如 SelRTF 和 TextRTF 之类的控件属性打开和保存文件。
RichTextBox控件的一些常用方法:
1.选中字体以及字体颜色设置:this.richTextBox1.SelectionFont = fontDialog1.Font;
if(this.richTextBox1.SelectedText.Length>0 && this.colorDialog1.ShowDialog()==DialogResult.OK)
{ this.richTextBox1.SelectionColor = colorDialog1.Color; }
2.剪切、复制、粘贴:this.richTextBox1.Cut();
if(richTextBox1.SelectedText.Length>0)
{richTextBox1.Copy();}
richTextBox1.Paste();
3.撤销前一次操作、撤销操作的回复:
richTextBox1.Undo(); richTextBox1.Redo();
4.背景设置:
if(this.colorDialog1.ShowDialog()==DialogResult.OK)
{
this.richTextBox1.BackColor = this.colorDialog1.Color;
}
四、标签(Label)控件
它是最常用的控件,在任何Windows应用程序中都可以中都可以看到标签控件。标签控件用于显示用户不能编辑的文件或图像,常用于对窗体上各种控件进行标注或说明。
在窗体中添加标签控件时,会创建一个Label类的实例。Label控件派生自Control控件,和其他控件一样支持事件,但通常不需要添加任何事件代码。
1、常用属性:
(1)Text属性:用来设置或返回标签控件中显示的文本信息。
(2)AutoSize 属性:用来获取或设置一个值,该值指示是否自动调整控件的大小以完整显示其内容。取
值为 true时,控件将自动调整到刚好能容纳文本时的大小,取值为false时,控件的大小为设计时的大小。
默认值为false。
(3)Anchor 属性:用来确定此控件与其容器控件的固定关系的。
(4)BackColor属性:用来获取或设置控件的背景色。当该属性值设置为 Color.Transparent 时,标签将透明显示,即背景色不再显示出来。
(5)BorderStyle 属性:用来设置或返回边框。有三种选择:BorderStyle.None 为无边框(默认),BorderStyle.FixedSingle 为固定单边框,BorderStyle.Fixed3D 为三维边框。
(6)TabIndex属性:用来设置或返回对象的Tab键顺序。
(7)Enabled 属性:用来设置或返回控件的状态。值为 true 时允许使用控件,值为 false 时禁止使用控件,此时标签呈暗淡色,一般在代码中设置。
(8)Name属性:标签控件的名称。
(9)Image属性:指定标签显示的图像。
(10)Visible属性:确定是否可见,默认为true。
说明:每个控件都有Name属性,用来在代码中表示该对象,设置该属性的值就是为控件命名。命名时一定要遵循规范,通常加上前缀。如Label标签为lbl,TextBox为txt,Button为btn。lblName,btnLogin,txtPwd都是规范命名。
五、图片框控件(PictureBox)
Windows窗体图片控件(PictureBox)用于显示位图、GIF、JPEG、图元文件或图标格式的图形。图片框控件表示可用于显示图像的 Windows 图片框控件,该控件是使用频度最高的控件,主要用以显示窗体文本信息。
六、使用复选框(CheckBox)
可以实现多个选项同时选择,传统上,CheckBox显示为一个标签,左边是一个带有标记的小方框。在希望用户可以选择一个或多个选项时,就应使用复选框。例如询问用户要使用的操作系统(如Windows Vista、Windows XP、Linux等)。这个控件的属性和事件非常类似于RadioButton控件的属性。注意,RadioButton 和CheckBox控件都有CheckChanged事件,但其结果是不同的。
CheckBox控件的常用属性如下:
(1)TextAlign属性:用来设置控件中文字的对齐方式,有9种选择,从上到下、从左至右分别是:ContentAlignment.TopLeft、ContentAlignment.TopCenter、 ContentAlignment.TopRight、ContentAlignment.MiddleLeft、ContentAlignment.MiddleCenter、 ContentAlignment.MiddleRight、ContentAlignment.BottomLeft、ContentAlignment.BottomCenter 和 ContentAlignment.BottomRight。该属性的默认值为ContentAlignment.MiddleLeft,即文字左对齐、居控件垂直方向中央。
(2)ThreeState属性:用来返回或设置复选框是否能表示三种状态,如果属性值为true时,表示可以表示三种状态—选中、没选中和中间态(CheckState.Checked、CheckState.Unchecked 和CheckState.Indeterminate),属性值为false时,只能表示两种状 态——选中和没选中。
(3)Checked属性:用来设置或返回复选框是否被选中,值为true时,表示复选框被选中,值为false时,表示复选框没被选中。当ThreeState属性值为true时,中间态也表示选中。
(4)CheckState 属性:用来设置或返回复选框的状态。在 ThreeState 属性值为 false 时,取值有CheckState.Checked或CheckState.Unchecked。在ThreeState属性值被设置为True时,CheckState还可以取值 CheckState.Indeterminate,在此时,复选框显示为浅灰色选中状态,该状态通常表示该选项下的多个子选项未完全选中。
七、单选控件(RadioButton)
显示为一个标签,左边是一个原点,该原点可以是选中或未选中。在要给用户提供几个互斥选项时,就可以使用单选按钮。例如,询问用户的性别。
把单选按钮组合在一起,给它们创建一个逻辑单元,此时必须使用GroupBox控件或其他容器。首先在窗体上拖放一个组框,再把需要的RadioButton按钮放在组框的边界之内,RadioButton按钮会自动改变自己的状态,以反映组框中惟一被选中的选项。如果不把它们放在组框中,则在任意时刻,窗体上只有一个RadioButton被选中。
1、常用属性:
(1)Checked属性:用来设置或返回单选按钮是否被选中,选中时值为true,没有选中时值为false。
(2)AutoCheck 属性:如果 AutoCheck 属性被设置为 true(默认),那么当选择该单选按钮时,将自动清除该组中所有其他单选按钮。对一般用户来说,不需改变该属性,采用默认值(true)即可。
(3)Appearance 属性:用来获取或设置单选按钮控件的外观。当其取值为 Appearance.Button 时,将使单选按钮的外观像命令按钮一样:当选定它时,它看似已被按下。当取值为 Appearance.Normal 时,就是默
认的单选按钮的外观。
(4)Text属性:用来设置或返回单选按钮控件内显示的文本,该属性也可以包含访问键,即前面带有“&”符号的字母,这样用户就可以通过同时按Alt键和访问键来选中控件。
2、常用事件:
(1)Click事件:当单击单选按钮时,将把单选按钮的Checked属性值设置为true,同时发生Click事件。
(2)CheckedChanged事件:当Checked属性值更改时,将触发CheckedChanged事件。
八、组合框(ComboBox)
用于在下拉组合框中显示数据。组合框控件结合了文本框和列表框控件的特点,用户可以在组合框内输入文本,也可以在列表框中选择项目。
ComboBox 控件又称组合框。默认情况下,组合框分两个部分显示:顶部是一个允许输入文本的文本框,下面的列表框则显示列表项。可以认为ComboBox就是文本框与列表框的组合,与文本框和列表框的功能基本一致。与列表框相比,组合框不能多选,它无 SelectionMode 属性。但组合框有一个名为DropDownStyle的属性,该属性用来设置或获取组合框的样式。
九、列表框(ListBox)
用来显示一组相关联的数据,用户可以从中选择一个或多个选项。ListBox中的数据既可以在设计时填充,也可以在程序运行填充。列表框(ListBox)中的每个元素称为“项”。
列表框控件常用属性、方法和事件:
Items:列表框中所有的项。
MultiColumn:列表框是否支持多列显示。
SelectedIndex:当前选定项目的索引项,列表框中的每个项都有一个索引号,从0开始。
SelectedItem:获取当前选定项。
SelectedItems:获取当前所有选定项的值。
SelectedValue:表示当前选定项的值。
Sorted:指定是否支持排序。
Text:当前选定项的文本。
方法:
Add:向ListBox的项列表添加项。
Insert:将项插入列表框的指定索引处。
Clear:从集合中移除所有项。
Remove:从集合中移除指定的对象。
RemoveAt:移除集合中指定索引处的项。
SelectedIndexChanged:选择索引发生改变时触发的事件。
SelectedValueChanged:选择值发生改变时触发的事件
十、 分组框(GroupBox)
又称为分组框,GroupBox控件是对控件进行分组的控件,可以设置每个组的标题。分组框控件属于容器控件,一般不对该控件编码。GroupBox控件常常用于逻辑地组合一组控件,如RadioButton 及 CheckBox控件,显示一个框架,其上有一个标题。
Windows窗体使用GroupBox控件对控件分组的原因有3个:
1、对相关窗体元素进行可视化分组以构造一个清晰的用户界面。
2、创建编程分组(如单选按钮分组)。
3、设计时将多个控件作为一个单元移动。
十一、选项卡控件(TabControl)
选项卡用于将相关的控件集中在一起,放在一个页面中用以显示多种综合信息。选项卡控件通常用于显示多个选项卡,其中每个选项卡均可包含图片和其他控件。选项卡相当于多窗体控件,可以通过设置多页面方式容纳其他控件。由于该控件的集约性,使得在相同操作面积可以执行多页面的信息操作,因此被广泛应用于Windows设计开发之中,被很多程序员所喜爱。
选项卡控件(TabControl)的基本属性:
Appearance:选项卡标签的显示样式
MultiLine:指定是否可以显示多行选项卡
SelectedIndex:当前所选选项卡页的索引值,默认值-1
SelectedTab:当前选定的选项卡页,如果未选定,则值为Null引用。
ShowToolTips:指定在鼠标移到选项卡时,是否显示该选项卡的工具提示
TabPages:选项卡集合,可添加修改选项卡
TabCount:检索选项卡控件中的选项卡数目
选项卡控件(TabControl)的基本事件:
SelectedIndexChaned:切换选项卡时触发事件
TabControl的属性一般用于控制TabPage容器的外观,特别是正在显示的选项卡。
由于时间仓促,简单介绍了Winform窗体中常用的十一个控件,有不足的地方请谅解下。待续……