第04篇:C#星夜拾遗之Windows常用控件

前言

MS为我们提供了很多实用的控件。在进行WinForm程序开发时,工具箱中的控件可以帮助我们方便的设计出满足客户需求的UI。本文就介绍一下在开发中常用的WinForm控件吧。

 

Button控件

MSDN中的说明:Windows 窗体 Button 控件允许用户通过单击来执行操作。当该按钮被单击时,它看起来像是被按下,然后被释放。每当用户单击按钮时,即调用 Click 事件处理程序。可将代码放入 Click 事件处理程序来执行所选择的任意操作。

按钮上显示的文本包含在 Text 属性中。如果文本超出按钮宽度,则换到下一行。但是,如果控件无法容纳文本的总体高度,则将剪裁文本。(注:对于所有控件,都可以使用 Text 属性来设置或返回文本。使用 Font 属性可以更改字体。还可以使用设计器设置文本)

Button控件还可以通过设置BackgroundImage属性显示背景图片。

特别说明:Windows窗体可以指定“确定”和“取消”按钮,可以在窗口编辑器中设置属性AcceptButionCancelButton。当设置完成后,用户按下回车键,将执行“确定”按钮的单击操作,用户按下ESC键,将执行“取消”按钮的单击操作。

 

CheckBox控件

MSDN中的说明:Windows 窗体 CheckBox 控件指示某个特定条件是处于打开状态还是处于关闭状态。它常用于为用户提供是/否或真/假选项。可以成组使用复选框 (CheckBox) 控件以显示多重选项,用户可以从中选择一项或多项。该控件与 RadioButton 控件类似,但可以选择任意数目的成组 CheckBox 控件。

对于CheckBox控件,可以使用Checked属性判断是否选中。通过修改Text属性来改变显示的文字。

特别说明:CheckBox控件除了CheckedUnchecked状态外,还存在第三种状态Indeterminate(不定),当控件的状态为Indeterminate时,它的显示如下图:

这时,Checked属性的值仍然为true。需要注意的是第三种状态不能由用户来设置,只能在程序中通过修改CheckState来控制。获取的时候同样需要通过CheckState属性。上面例子中的代码为:this.checkBox1.CheckState = CheckState.Indeterminate;

 

TextBox 控件

MSDN中的说明:Windows 窗体文本框用于获取用户输入或显示文本。TextBox 控件通常用于可编辑文本,不过也可使其成为只读控件。文本框可以显示多个行,对文本换行使其符合控件的大小以及添加基本的格式设置。TextBox 控件仅允许在其中显示或输入的文本采用一种格式。

    对于TextBox控件的多行模式,只需要MultiLine属性为true即可;如果需要只读,则将ReadOnly属性设为true即可。需要注意的是,TextBox控件中的文本不能单独的设置格式,也就是MSDN中所说的“TextBox 控件仅允许在其中显示或输入的文本采用一种格式”。

    特别说明:当TextBox控件采用多行模式时,可以通过Lines属性获取或设置控件中显示的文本。另外,只有当用户输入回车时才会换行,也就是说,TextBox控件没有自动换行的功能。

 

RichTextBox控件

MSDN中的说明:Windows 窗体 RichTextBox 控件用于显示、输入和操作带有格式的文本。RichTextBox 控件除了执行 TextBox 控件的所有功能之外,它还可以显示字体、颜色和链接,从文件加载文本和嵌入的图像,撤消和重复编辑操作以及查找指定的字符。与字处理应用程序(如 Microsoft Word)类似,RichTextBox 通常用于提供文本操作和显示功能。与 TextBox 控件一样,RichTextBox 控件也可以显示滚动条;但与 TextBox 控件不同的是,默认情况下,该控件将同时显示水平滚动条和垂直滚动条,并具有更多的滚动条设置。

RichTextBox可以设置带格式的文本内容,并可以将这种文本保存为rtf格式的文件(当然也可以加载rtf格式文件)。当通过程序设置这些内容时,需要用到相关的方法,这些方法实在太多,这里就不一一列出。

 

ImageList 组件

MSDN中的说明:Windows 窗体 ImageList 组件用于存储图像,这些图像随后可由控件显示。图像列表使您能够为一致的单个图像目录编写代码。

ImageList组件可谓用途多多,它可以方便的为其它控件提供图片存储。像TreeViewListBox等控件,都可以设置ImageList属性,设置完成后只需要在设置ImageIndex就可以唯一确定一个要显示的图片了。

特别说明:TransparentColor属性可以设置被视为透明的颜色,该属性的默认值为Transparent,如果将该属性设置为Red或其它某一个颜色值,当图片中出现该颜色时将被作为透明来处理。

 

TreeView 控件

MSDN中的说明:Windows 窗体 TreeView 控件以类似于在 Windows 操作系统的 Windows 资源管理器左窗格中显示文件和文件夹的方式显示节点的层次结构。

使用 Windows 窗体 TreeView 控件,可以为用户显示节点层次结构,就像在 Windows 操作系统的 Windows 资源管理器功能的左窗格中显示文件和文件夹一样。树视图中的各个节点可能包含其他节点,称为“子节点”。您可以按展开或折叠的方式显示父节点或包含子节点的节点。通过将树视图的 CheckBoxes 属性设置为 true,还可以显示在节点旁边带有复选框的树视图。然后,通过将节点的 Checked 属性设置为 true false,可以采用编程方式来选中或清除节点。

特别说明:TreeView支持直接编辑节点的显示值,这需要将LabelEdit属性设置为trueTreeView同样支持节点的移动操作,这需要将AllowDrop属性设置为true。笔者在网上整理了一个树节点拖动的例子,感兴趣的朋友可以通过这里下载(SampleDragTreeView.rar

 

结束语

    Windows控件很多,本文只列出部分常用控件进行说明。大部分内容来源与MSDN,特别说明部分为笔者的使用心得。如果你希望了解更多Windows控件的内容,可以在MSDN中查看,相信你会受益匪浅。

    另外,笔者曾经对BackgroundWorker 组件DatagridView控件的使用进行过简易的说明,希望对刚进入C#大门的朋友有所帮助。

posted @ 2010-05-15 14:52  拓荒者FF  阅读(925)  评论(0编辑  收藏  举报