Windows应用程序控件的基类是位于System.Windows.Forms命名空间的Control类。

Control类定义了控件类的共同属性、方法和事件,其他的控件类都直接或间接到派生自这个类。

控件分类 作用
文本类控件 文本类控件可以在控件上显示文本
选择类控件 主要为用户提供选择的项目
分组控件 使用分组控件可以将窗体中的其他控件进行分组处理
菜单控件 为系统制作功能菜单,将应用程序命令分组,使它们更容易访问
工具栏控件 提供主菜单中常用的相关工具
状态栏控件 用于显示窗体上的对象的相关信息,或者可以显示应用程序的信息

文本类控件主要包括标签控件(Label控件)、按钮控件(Button控件)、文本框控件(TextBox控件)和有格式文本控件(RichTextBox控件)。

(1) Label控件

属性:

Text 标签文本
Visible 显示/隐藏控件

(2) Button控件

属性:

AcceptButton 将按钮设置为窗体的“接受”按钮(Enter键按下,激发该按钮的Click事件)
CancelButton 将按钮设置为窗体的“取消”按钮(ESC键按下,激发该按钮的Click事件)

事件:

Click 单击事件

(3)TextBox控件

属性:

ReadOnly 只读属性
PasswordChar 输入密码时,文本框中显示的字符
UseSystemPasswordChar 为True时,输入密码,文本框中显示‘*’
Multiline 为True时,文本框可以输入多行数据
SelectionStart 设置选择文本的起始位置
SelectionLength 设置选择文本的长度

事件:

TextChanged 文本更改事件

(4)RichTextBox控件

属性:

ScrollBars 滚动条的显示样式属性
SelectionFont 设置控件中的字体的字体系列、大小和字样。
SelectionColor 设置字体的颜色。
SelectionBullet 将选定的段落设置为项目符号列表的格式。
SelectionIndent 该属性设置一个整数,该整数表示控件的左边缘和文本的左边缘之间的距离(以像素为单位)。
SelectionRightIndent 该属性设置一个整数,该整数表示控件的右边缘和文本的右边缘之间的距离。

选择类控件主要包括:下拉组合框控件(ComboBox控件)、复选框控件(CheckBox控件)、单选按钮控件(RadioButton控件)、数值选择控件(NumericUpDown控件)和列表控件(ListBox控件)。

(1) ComboBox控件

属性:

DropDownStyle 下拉列表样式:

Simple:使得ComboBox控件的列表部分总是可见的。
DropDown(默认值):使得用户可以编辑ComboBox控件的文本框部分,只有单击右侧的箭头才能显示列表部分。
DropDownList:用户不能编辑ComboBox控件的文本框部分,呈现下拉框的样式。

方法:

public void  SelectAll() 选择ComboBox控件的可编辑部分的所有文本。 
(在使用SelectAll方法之前,要将控件的DropDownStyle属性设置为DropDown,这样才能在文本框部分对选择项进行编辑。)

事件:

SelectedValueChanged 当下拉列表的选择项发生改变时,引发控件的该事件。

(2) CheckBox控件

属性:

CheckState 属性值Checked/Unchecked表示控件处于选择/未选择状态。

事件:

CheckStateChanged 当控件的选择状态发生改变时,将会触发该事件。

(3) RadioButton控件

属性:

Checked 属性值为true/false表示控件被选中/未被选中。

事件:

CheckedChanged 当控件的选中状态发生改变时,触发该事件。

(4) NumericUpDown控件

属性:

Maximum 可以设置属性值的最大值。
Minimum 可以设置属性值的最小值。
Value 可以获取控件中显示的属性。
DecimalPlaces 用于确定在小数点后显示几位数,默认值为0。
ThousandsSeparator 用于确定是否每隔3个十进制数字位就插入一个分隔符,默认情况下为false。
Hexadecimal 属性为true时,则该控件可以用十六进制显示值。默认情况下为false。

(5) ListBox控件

属性:

HorizontalScrollbar 属性值为true时,则显示水平滚动条。
ScrollAlwaysVisible 属性值为true时,则显示垂直滚动条。
SelectionMode 设置控件的选择模式,

MultiExtended 可以选择多项,并且用户可使用Shift键、Ctrl键和箭头键来进行选择。
MultiSimple 可以选择多项。
None 无法选择项。
One 只能选择一项

方法:

Items.Add() 可以向ListBox控件中添加项目。
Irems.Remove() 可以将ListBox控件中选中的项目移除。

分组类控件主要包括容器控件(Panel控件)、分组框类控件(GroupBox)和选项卡控件(TabControl控件)。

(1) Panel控件

容器控件用于为其他控件提供可识别的分组。(容器控件可以有滚动条)。

(2) GroupBox控件

分组框控件主要为其他控件提供分组,按照控件的分组来细分窗体的功能。(分组框控件没有滚动条)。

(3) TabContril控件

选项卡控件可以添加多个选项卡,然后在选项卡上添加子控件实现窗体的多页设计。

属性:

TabPage 选项卡的外观
Appearance 属性值可为Buttons/FlatButtons表示选项卡为三维按钮样式/平面按钮样式。

方法:

Add 添加控件到选项卡控件
Remove 从集合中移除TabPage
Clear 从集合中移除所有的选项卡页

(1) MenuStrip控件

菜单栏控件是程序的主菜单。(MenuStrip控件支持多文档界面、菜单合并、工具提示和溢出。可以通过添加访问键、快捷键、选中标记、图像和分割条,来增加菜单的可以用性和可读性。)。

(2) ToolStrip控件

工具栏控件是.NET架构2.0增加的新控件,它替换了早期版本的ToolBar控件、ToolStrip及相关联的类。

(3) StatusStrip控件

状态栏控件通常位于窗体的最底部,用于显示窗体上的对象的相关信息,或者可以显示应用程序的信息。

通常,StatusStrip控件有ToolStripStatusLabel对象组成,每个这样的对象都可以显示文本、图标或同时显示两者。

StatusStrip还可以包含ToolStripDropDownButton、ToolStripSplitButton、ToolStripProgressBar控件。

作者:韩兆新
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

C#学习——控件的更多相关文章

  1. swift系统学习控件篇:UIProgressView+NSTimer+UIstepper+UIAlertController

    工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIProgressView+NSTimer+UIstepper UIStepper UIP ...

  2. swift系统学习控件篇:UIbutton+UIlabel+UITextField+UISwitch+UISlider

    工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UIButton+UILabel // // ViewController.swift // ...

  3. 迟到的 WPF 学习 —— 控件

    这一章书中内容比较多而杂,但每个对象的内容又相对简短,所以只挑选里边有代表性的内容做记录. 1. Label 控件:一个基础的简单的 ContentControl,Labe 支持快捷键文本的设置,可以 ...

  4. DOM学习控件定位和案例

    Dom中有多种定位属性,下面是一个简单案例 <html><!--制作一个会跟着鼠标走的图像,还有控件定位的案例--> <head> <title>doc ...

  5. MFC/QT 学习笔记(四)——MFC基于对话框学习控件(下)

    //5.列表控件 ListControl 属性 报表模式 view:Report:添加变量 //Cdemo5Dlg.cpp ps:资源视图 右键 类向导 成员变量 查看对象所属类 // TODO: 在 ...

  6. MFC/QT 学习笔记(四)——MFC基于对话框学习控件(上)

    新建项目->MFC模板->MFC应用程序->应用程序类型:基于对话框->...OK 解决方案资源管理器->资源文件->xxx.rc->进入:资源视图-> ...

  7. swift系统学习控件篇:UITableView+UICollectionView

    工作之余,学习下swift大法.把自己的学习过程分享一下.当中的布局很乱,就表在意这些细节了.直接上代码: UITableView: // // ViewController.swift // UIt ...

  8. PHP项目学习——控件

    主要是在项目学习中总结的一些东西 动态效果 flashbar滚动条,增加动态效果,直接嵌入html中 <!--flash滚动条--> <object classid="cl ...

  9. Android学习——控件ListView的使用

    一.ListView的简单用法 首先新建一个ListViewTest项目,并让Android Studio自动创建好活动.然后修改activity_main.xml中的代码,如下: <?xml ...

随机推荐

  1. sqlserver数据库脱机和分离的区别

    脱机和分离的区别: 分离和脱机都可以使数据库不能再被使用,但是分离后需要附加才能使用,而脱机后只需联机就可以用了. 附加数据库报错: 无法打开物理文件 XXX.mdf".操作系统错误 5:& ...

  2. 调整数组顺序使奇数位于偶数前面(python)

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. 方法1:冒泡  O( ...

  3. overload(重载) 和 override(重写)的区别

    overload(重载): 重载是基于一个类中,方法名相同,参数列表不同(如果参数列表相同时,参数的类型要不同),与返回值和访问修饰符都无关 如果在面试中就直接说:"同名不同参"  ...

  4. Angular前端开源框架

    1.  项目框架介绍 本项目采用了开源项目ngx-admin作为脚手架.基于Angular 8 +,Bootstrap 4+和Nebular,ngx-admin是最受欢迎的后台管理模板,是用于个人和商 ...

  5. favicon.ico是什么?

    一.什么是favicon? 所谓favicon,便是其可以让浏览器的收藏夹中除显示相应的标题外,还以图标的方式区别不同的网站.favicon 中文名称:网页图标  英文名称:favorites ico ...

  6. POJ 3061 Subsequence ( 二分 || 尺取法 )

    题意 : 找出给定序列长度最小的子序列,子序列的和要求满足大于或者等于 S,如果存在则输出最小长度.否则输出 0(序列的元素都是大于 0 小于10000) 分析 : 有关子序列和的问题,都可以考虑采用 ...

  7. mysqldump mysql数据库导入导出

    syhuo_oauth数据库结构 [root@VM_58_118_centos dbback]# /usr/bin/mysqldump -uroot -P3306 --protocol=tcp --h ...

  8. 【PowerOJ1746&网络流24题】航空路线问题(费用流)

    题意: 思路: [问题分析] 求最长两条不相交路径,用最大费用最大流解决. [建模方法] 把第i个城市拆分成两个顶点<i.a>,<i.b>. 1.对于每个城市i,连接(< ...

  9. C++ 对象间通讯机制 框架实现

    // SignalSlot.h: interface for the CSignalSlot class. // /////////////////////////////////////////// ...

  10. UE4联网游戏中让不同的客户端生成不同的Pawn类型

    效果描述 一个服务器,两个客户端,让他们连接后分别生成不同的Pawn,并且在不同的位置生成. 意义 这是个项目需求,但是我发现如果能够彻底理解并制作出这个功能,会对虚幻4内置的网络功能以及一些重要的G ...