属性
我们知道,在面向对象的程序设计中,一个类有很多成员,这些成员包括域(Fields)、构造函数、析构函数、方法(Methods)、事件及属性(Properties)等。这些成员有的表示对象的一个特征,也有的使用对象执行一个操作。
.Net类中属性(Properties)非常重要,其主要用于表示对象的特征,如一个窗体的大小、位置、是否可以最大化、是否显示控制栏及窗体的背景色彩等等。属性(Properties)对程序员是公开的,你可通过简单的“=”(赋值号)就可访问属性。在.Net类中,有的属性只能读、有的只能写,当然大多数属性是可以读写的,这主要取决于类中对属性的定义。如下面的代码在Form(窗体)类中定义了一个控制栏是否显示的属性:
public bool ControlBox {get; set;} [C#]
Public Property ControlBox As Boolean[Visual Basic] |
有了上面的定义,要使一个窗体不显示控制栏,用C#只需要使用下面的简单语句即可:
在Windows Forms程序设计中,我们都是通过设置大量的属性值,形成一个非常漂亮的窗体的。另外,有了属性,也增加了语言对RAD(快速开发)的很好支持。
控件: Windows Forms程序设计中,仅仅有窗体往往是不够的,还必须有通过众多的控件来充实窗体的内容,达到友好、人性化的人机操作界面设计。这此,.Net类库为我们准备了几乎Windows Forms中会要用到的各种元素类,一般情况下,我们把这些类或其实例称为控件,窗体就是通过各种各样的控件充实起来的。
其实,控件这一概念是在RAD(快速开发)工具中运用起来的,这些开发工具把很多常用的类及相关内容非常形象化的放在工具栏或面板中,你只需要通过简单的鼠标拖放等操作就可以为程序添加各种各样的控件并设置控件的各种属性,由开发工具自动生成相应的代码。通过使用控件,使你的整个开发变得更加简单了。
在.Net类库中,基本上所有的控件都是由System.Windows.Forms.Control类继承而来的,该类主要提供非常基本的、让类能实现形象化显示、处理各种键盘及鼠标的输入并响应各种事件等。
由于大多数控件都是从Control类中继承,而该类中有一个属性即Controls表示当前控件的所有子控件集合。因此,自己写代码把一个控件添加到窗体中非常简单,只需要把所要添加的控件对象加入当前窗体的Controls属性集合中即可,如下面的C#代码:
form1.Controls.Add(new Button()); |
将在窗体form1上添加一个按钮控件。
另外,你还可以定义自己的控件,主要通过System.Windows.Forms.UserControl类(该类是Control的派生类),当然使用Control类一样可以。