您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > C#控件介绍及用法(详细版)
C#其实很好学,只要你弄清楚控件。控件控件是视窗交互的工具。控件是一种特殊的类,所有控件都继承自System.Windows.Forms.Control类。这里Control就叫做控件的基类,控件就是Control的派生类。一个类从基类继承,就拥有基类的所有成员(包括:变量(亦称字段),属性,函数(函数亦称方法),事件,运算符)。类之间通过继承关系保证了派生类拥有需要的方法或字段。所以Control的成员就是控件的通性。这里列出了Control的常用成员:名称类别用途Control构造函数用于初始化一个控件Dispose方法释放由Control使用的所有资源Equals方法判断控件是否相同Focus方法为控件设置输入焦点GetContainerControl方法返回容器控件GetType方法获取控件类型RaiseDragEvent方法引发适当的拖动事件。RaiseKeyEvent方法引发适当的键事件。RaiseMouseEvent方法引发适当的鼠标事件。RaisePaintEvent方法引发适当的绘画事件。Refresh方法强制重绘自己和任何子控件ResetBackColor方法将背景色重置为其默认值。ResetCursor方法重置光标ResetFont方法重置字体ResetForeColor方法重置前景色ResetImeMode方法重置输入法Select方法激活控件Show方法向用户显示控件ToString方法控件类名转为字符串Update方法使控件重绘其无效区域AllowDrop属性指示控件是否接受拖放数据BackColor属性获取或设置控件的背景色。BackgroundImage属性获取或设置在控件中显示的背景图像CanFocus属性获取一个值,该值指示控件是否可以接收焦点。Controls属性获取包含在控件内的控件的集合Cursor属性获取或设置当鼠标指针位于控件上时显示的光标Dock属性获取或设置哪些控件边框停靠到其父控件并确定控件如何随其父级一起调整大小。DoubleBuffered属性该值指示此控件是否应使用辅助缓冲区重绘其图面,以减少或避免闪烁Enabled属性该值指示控件是否可以对用户交互作出响应Focused属性该值指示控件是否有输入焦点Font属性获取或设置控件显示的文字的字体ForeColor属性获取或设置控件的前景色Height属性获取或设置控件的高度Location属性获取或设置该控件的左上角相对于其容器的左上角的坐标Margin属性获取或设置控件之间的空间MousePosition静态属性获取鼠标光标的位置(以屏幕坐标表示)。Name属性获取或设置控件的名称Parent属性获取或设置控件的父容器Size属性获取或设置控件的高度和宽度Tag属性获取或设置包含有关控件的数据的对象Text属性获取或设置与此控件关联的文本Visible属性该值指示是否显示该控件Width属性获取或设置控件的宽度BackColorChanged事件当BackColor属性的值更改时发生BackgroundImageChanged事件当BackgroundImage属性的值更改时发生Click事件在单击控件时发生DoubleClick事件在双击控件时发生DragDrop事件在完成拖放操作时发生GotFocus事件在控件接收焦点时发生KeyPress事件在控件有焦点的情况下按下键时发生LocationChanged事件在Location属性值更改后发生LostFocus事件当控件失去焦点时发生MouseClick事件在鼠标单击该控件时发生MouseEnter事件在鼠标指针进入控件时发生。MouseHover事件在鼠标指针停放在控件上时发生。MouseLeave事件在鼠标指针离开控件时发生。MouseMove事件在鼠标指针移到控件上时发生MouseUp事件在鼠标指针在控件上并释放鼠标键时发生MouseWheel事件在移动鼠标滚轮并且控件有焦点时发生Paint事件在重绘控件时发生Resize事件在调整控件大小时发生TextChanged事件在Text属性值更改时发生以上是最常用的成员,便于查找,完整列表参考静态文本控件Label:表示控件的文本标签,并提供对访问键的支持。它是最简单的控件,用于显示文字,其实它不一定是静态的,显示的文字可以随时通过Text属性更改。常用的属性是Font、BackColor、ForeColor、Text、Location、Size、Visible。超链接文本控件LinkLabel:Windows窗体LinkLabel控件使您能够向Windows窗体应用程序添加Web样式的链接。一切可以使用Label控件的地方都可以使用LinkLabel控件;还可以将文本的一部分设置为指向某个对象或网页的链接。与Label类似,提供了类似超链接的文字样式,Label也可以设置Click事件,但LinkLabel更容易让人发现它被单击有不同的作用(由于它像超链接的样子)。也可以用作选项,【例】:新建工程,设计界面如图:修改LinkLabel控件名字:linkOption选择修改(Name)属性改为linkOptionP.S.以后就用linkOption表示这个控件,在C#代码中控件实例实质上是一个变量,变量类型就是控件的类。这就是这个控件的变量名。由于默认的名称linkLabel1没有实际意义,编程时通常先修改其名字,使其好记。由于是变量名所以命名规则与普通变量没有区别,由“_”或英文字母开头都是合法的,不允许重名。但通常许多控件共同运作来完成一件具体的事,所以通常习惯在控件前面加上小写的类型简称,后跟首字母大写的名称。这是一条基本技巧,以后不再重复介绍。双击linkOption编辑代码privatevoidlinkOption_LinkClicked(objectsender,LinkLabelLinkClickedEventArgse){linkOption.Text=linkOption.Text==On?Off:On;}运行多次单击linkOption查看效果。这里使用了条件运算符来实现这个功能。文本框TextBox:表示Windows文本框控件。文本框是提供用户数据输入输出的控件。【例】:求三角形面积编辑界面如图分别命名为txtA、txtB、txtC、txtArea直接开始编辑代码:新建函数privatevoidtextBox_Change(objectsender,EventArgse){doublea=0,b=0,c=0,p=0;try{a=double.Parse(txtA.Text!=?txtA.Text:0);b=double.Parse(txtB.Text!=?txtB.Text:0);c=double.Parse(txtC.Text!=?txtC.Text:0);p=(a+b+c)/2;txtArea.Text=Math.Sqrt(p*(p-a)*(p-b)*(p-c)).ToString();}catch(FormatException){txtArea.Text=类型错误;}}设置txtA、txtB、txtC的Click事件处理函数为textBox_Change:按住Ctrl分别单击txtA、txtB、txtC以同时选择这三个控件查看事件列表找到TextChange事件选择textBox_Change运行输入一些数字查看运行情况。还可以修改器PasswordChar属性使其变成密码框,这个属性的类型是char,只可以输入一个字符,用来代替原来显示文字的位置,令其为*或#看看效果吧:编辑界面如图设置其PasswordChar属性,输入一个字符运行输入一些文字看看效果设置为其他值看看:如#、X、●、◆、★、■、§。P.S.这只是表面的现象,不影响Text属性的取值,仍然用Text属性取出或写入字符串。也可以修改其Dock属性为Top或Bottom,文本框会立即保持与窗口同宽:编辑界面如图设置Dock属性为Top:运行改变窗体大小查看效果。P.S.你可能觉得这与窗体贴的过分地紧了,最好留一点边距,这也有办法,只需修改窗体的Padding属性,改为8,8,8,8试试。文本框还有Enable、ReadOnly、Visible属性,分别表示是否禁用文本框(变灰)、是否只读(用户不能修改其内容)和是否可见(设为false就不显示)是一些常用属性,其他控件也有,以后不再重复介绍。Enable=false的效果还有一个是MultiLine属性,使文本框可以是多行的将其设为true效果:可以访问Lines属性修改其内容。这时WordWrap属性还可指定它是否自动换行显示WordWrap=trueWordWrap=false这样的话显示不全,可更改ScrollBars属性,添加合适的滚动ScrollBars=HorizontalScrollBars=VerticalScrollBars=Both按钮Button:表示一个响应ButtonBase.Click事件的Windows按钮控件。通常在鼠标对其操作(单击、双击等)时产生一些事件,并处理。【例】:可对上述示例加以修改:添加按钮如图按钮命名为btnCalc令btnCalc.Click=textbox_Change清空txtA、txtB、txtC的Click处理函数查看代码找到textbox_Change选中函数名右击鼠标指向“重构(R)”-“重命名(R)…”,并单击。改名为Calc_Click确定应用运行输入数并单击“Calculate”,查看效果P.S.更改已经定义好的函数名、变量名等标识符的名称请使用“重构-重命名”,它将自动为所有的标识符引用改名以匹配新的名字。这里的改名不是必要步骤(5-11步),但为了使实例更直观,避免混淆。复选框CheckBox控件:表示WindowsCheckBox。它经常用于选项,使用非常简单,只需设定Text(显示的文本),根据需要获取或设置Checked值就可以了,这个属性表示是否勾选,为bool型。【例】闹钟选项设置编辑界面如图使复选框的名字依次为chkSun、chkMon、chkTue、chkWed、chkThu、chkFri、chkSat使按钮名字依次为btnApply、btnCancel添加新的CheckBox[]数组privateCheckBox[]checkBoxes;修改WinForm构造函数:publicForm1(){InitializeComponent();checkBoxes=newCheckBox[]{this.chkSun,this.chkMon,this.chkTue,this.chkWed,this.chkThu,this.chkFri,this.chkSat};}双击Apply编辑Click事件处理函数privatevoidbtnApply_Click(objectsender,EventArgse){stringstr=You'veselected:;foreach(CheckBoxcbincheckBoxes)if(cb.Checked)str+=\n\t+cb.Text;if(str==You'veselected:)str+=Nothing;MessageBox.Show(str);}双击Cancel编辑Click事件处理函数privatevoidbtnCancel_Click(objectsender,EventArgse){this.Close();}修改WinForm属性运行查看效果P.S.第8步设置了Winform的确定和取消按钮(即AcceptButton和CancelButton属性)可以看到按
本文标题:C#控件介绍及用法(详细版)
链接地址:https://www.777doc.com/doc-5015663 .html