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. vue安装iview和配置

    在命令行工具上输入:npm install iview --save 等待安装完成. 在项目的src/main.js中添加三行代码引入iview import iView from 'iview' i ...

  2. 安卓手机通过有线连接PC上网

    因手机wifi坏了,速度上限为2.5m/s.无法发挥出100m带宽的威力. 这里探索各大神的指导,记录下其中一种方式. :链接       主题:使用openvpn和手机的USB共享网络 通过mico ...

  3. 千呼万唤始出来——DataV私有部署功能

    DataV的开发者们,今天进入你的用户中心,就会发现有一个小惊喜默默的在等待着你.那就是——私有部署功能上线啦! 一直以来私有部署都是一些有需要的小伙伴所望尘莫及的,毕竟高贵的身份摆在那里,现在不用再 ...

  4. React Native 中 跨页面间通信解决方案之 react-native-event-bus

    https://github.com/crazycodeboy/react-native-event-bus 用法: A页面和B页面中都有相同的列表,点击B页面中的收藏按钮,A页面会跟着更新 impo ...

  5. React Native 之react-native-sqlite-storage

    npm 官网指导: https://www.npmjs.com/package/react-native-sqlite-storage 1. 执行: npm install react-native- ...

  6. CTO爆料:2019程序员最需要了解的行业前沿技术是什么?

    安森,个推CTO 毕业于浙江大学,现全面负责个推技术选型.研发创新.运维管理等工作,已带领团队开发出针对移动互联网.金融风控等行业的多项前沿数据智能解决方案. 曾任MSN中国首席架构师,拥有十余年资深 ...

  7. liunx 定时任务crontab格式说明

    每分钟执行 */1 * * * * 每小时执行 0 * * * * 每天执行 0 0 * * * 每周执行 0 0 * * 0 每月执行 0 0 1 * * 每年执行 0 0 1 1 *

  8. VMware 虚拟机的虚拟磁盘编程知识点扫盲之二

    目录 目录 前文列表 VDDK 安装 VDDK VixDiskLib VADP 前文列表 VMware 虚拟机的虚拟磁盘编程知识点扫盲之一 VDDK 摘自官方文档:The Virtual Disk D ...

  9. 【ABAP系列】SAP ABAP 用BAPI批量导入物料的质量视图

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP ABAP 用BAPI批量导入 ...

  10. pyenv python 版本控制

    经常遇到这样的情况: 系统自带的Python是2.x,自己需要Python 3.x,此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存,pye ...