控件的使用
P.S. 本章讲解常用控件的使用方法,将不对算法和语法加以解释。
控件
控件是视窗交互的工具。控件是一种特殊的类,所有控件都继承自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
属性
获取或设置控件的前景
textbox控件边框设置
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 属性值更改时发生
以上是最常用的成员,便于查,完整列表参考
msdn.microsoft/zh-cn/library/system.l_members.aspx

静态文本控件Label:
表示控件的文本标签,并提供对访问键的支持。
它是最简单的控件,用于显示文字,其实它不一定是静态的,显示的文字可以随时通过Text属性更改。常用的属性是Font、BackColor、ForeColor、Text、Location、Size、Visible。
超链接文本控件LinkLabel:
Windows 窗体 LinkLabel 控件使您能够向 Windows 窗体应用程序添加 Web 样式的链接。一切可以使用 Label 控件的地方都可以使用 LinkLabel 控件;还可以将文本的一部分设置为指向某个对象或网页的链接。
与Label类似,提供了类似超链接的文字样式,Label也可以设置Click事件,但LinkLabel更容易让人发现它被单击有不同的作用(由于它像超链接的样子)。也可以用作选项,【例】:
1 新建工程,设计界面如图:
2 修改LinkLabel控件名字:linkOption
2.1 选择
2.2 修改(Name)属性
2.3 改为linkOption
2.3.1 P.S.以后就用linkOption表示这个控件,在C#代码中控件实例实质上是一个变量,变量类型就是控件的类。这就是这个控件的变量名。由于默认的名称linkLabel1没有实际意义,编程时通常先修改其名字,使其好记。由于是变量名所以命名规则与普通变量没有区别,由“_”或英文字母开头都是合法的,不允许重名。但通常许多控件共同运作来完成一件具体的事,所以通常习惯在控件前面加上小写的类型简称,后跟首字母大写的名称。这是一条基本技巧,以后不再重复介绍。
3 双击linkOption编辑代码
private void linkOption_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
    linkOption.Text = linkOption.Text == "On" ? "Off" : "On";
}
4 运行
5 多次单击linkOption查看效果。
这里使用了条件运算符来实现这个功能。
文本框TextBox:
表示 Windows 文本框控件。
文本框是提供用户数据输入输出的控件。【例】:求三角形面积
1 编辑界面如图
2 分别命名为txtA、txtB、txtC、txtArea
3 直接开始编辑代码:
3.1 新建函数
private void textBox_Change(object sender, EventArgs e)
{
    double a = 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 = "类型错误"; }
}
4 设置txtA、txtB、txtC的Click事件处理函数为textBox_Change:
4.1 按住Ctrl分别单击txtA、txtB、txtC以同时选择这三个控件
4.2 查看事件列表
4.3 到TextChange事件
4.4 选择textBox_Change
5 运行
6 输入一些数字查看运行情况。

还可以修改器PasswordChar属性使其变成密码框,这个属性的类型是char,只可以输入一个字符,用来代替原来显示文字的位置,令其为*或#看看效果吧:
1 编辑界面如图

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。