C#控件编程之文本框(TextBox)的使用
作者:To be better now
这篇文章主要介绍了C#控件编程之文本框(TextBox)的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
以自身开发经验,从属性与事件详解文本框(TextBox)的用法。
编程语言:C#
编程环境:Visual Studio 2019
TextBox提供文字输入和显示功能,应用广泛,随处可见,作为一个Winform开发者,掌握它是必要的。
TextBox控件属性
布局
Location
:Point型,定义控件左上角相对于其容器左上角的坐标,初始为(0,0)。(若是工具箱拖动创建,初始为放置控件的左上角坐标)MaximumSize
:Size型,定义控件可以调整到的最大尺寸,初始为(0,0)。(注:初始时,相当于不起作用,可以随意拉大)MinimumSize
:Size型,定义控件可以调整到的最小尺寸,初始为(0,0)。Size
:Size型,定义控件的尺寸(宽,高)。
设计
Name
:string型,定义控件的成员变量名,初始为“button1”。GenerateMember
:bool型,指示是否生成该控件的成员变量,初始为ture。Locked
:bool型,指示在设计时是否锁定控件的坐标和尺寸,初始为false。(注:将此项设置为true将导致无法拖动控件,但仍可以通过写代码修改控件的坐标和尺寸)Modifiers
:枚举型,定义控件的可访问性级别,枚举值有Private(同类可访问)、Public(公开访问)、Protected(同类及派生类可访问)、Internal(同程序集可访问)、Protected Internal(同程序集及派生程序集可访问),初始为Private。(注:要想在其他类里访问该控件,需要修改这个属性,这个属性无法写代码修改)
外观
BackColor
:Color型,定义控件的背景色,初始为系统颜色Control。BorderStyle
:BorderStyle枚举型,定义控件边框类型,枚举值有None(无边框)、FixedSingle(单边框)、Fixed3D(3D边框),初始为Fixed3D。Cursor
:Cursor型,定义鼠标移动到控件时显示的光标,初始为Default。Font
:Font型,定义控件显示文本的字体和字号,初始为宋体,9pt。ForeColor
:Color型,定义控件显示文本的颜色,初始为系统颜色ControlText。Lines
:string[]型,定义多行编辑显示的文本项,初始为空。(注:设置允许多行编辑该属性才有效,即Multiline=true,在属性框里直接编辑该属性时,用回车符表示换行,写代码添加项时,string[]数组的每一项就是一行)RightToLeft
:RightToLeft枚举型,定义控件是否从右往左绘制,枚举值有Yes(从右往左绘制)、No(从左往右绘制)、Inherit(继承当前,通常是从左往右绘制),初始为No。ScrollBars
:ScrollBars枚举型,定义多行编辑的文本框所显示的滚动条,枚举值有None(不显示)、Horizontal(显示水平滚动条)、Vertical(显示竖直滚动条)、Both(显示水平和竖直滚动条),初始为None。(注:设置允许多行编辑该属性才有效,即Multiline=true)Text
:string型,定义控件显示的文本,初始为空。TextAlign
:ContentAlignment枚举型,定义控件显示文本的对齐方式,枚举值包括Left(左对齐)、Right(右对齐)、Center(居中),初始为Left。
行为
AcceptsTab
:bool型,指示在多行编辑时是否能用Tab键,初始为false。(注:设置允许多行编辑该属性才有效,即Multiline=true)
CharacterCasing
: CharacterCasing枚举型,定义输入字符是否保持大写或小写,枚举值有Normal(保持不变)、Upper(转换为大写)、Lower(转换为小写),初始为Normal。ContextMenuStrip
:定义用户右击控件时显示的快捷菜单,初始为空。(注:若要创建此菜单,需要写代码创建或者拖动创建ContextMenuStrip后再选择这里,无法在属性框直接创建,详见我的另一篇)Enabled
:bool型,指示是否启用该控件,初始为true。(注:将该属性设置为false,控件变灰,为不可用状态)HideSelection
:bool型,指示当编辑控件失去焦点时,选定内容是否取消选定显示,初始为true。
MaxLength
:int型,定义允许输入的最大字符数,初始为32767。Multiline
:bool型,指示是否允许多行编辑,初始为false。
PasswordChar
:char型,定义编辑控件的掩码,初始为空。(注:若设置此属性,则输入的所有字符都会被显示为所设置的字符,常设置*(星号)来表示对输入密码的隐藏)
ReadOnly
:bool型,指示是否可以编辑文本,初始为false。UseSystemPasswordChar
:bool型,指示单行编辑文本是否以默认的密码字符显示,初始为false。(注:设置允许多行编辑该属性无效,即Multiline=false该属性才有效)
Visible
:bool型,指示是否显示该控件,初始为true,为false则隐藏控件。
TextBox控件事件
除一些公共事件外,常用的特有的事件是TextChanged事件。
TextChanged
:编辑文本事件,是TextBox最常用的事件,TextBox里的文本发生变化时触发。(双击设计窗体中的按钮可直接注册该事件,并自动转到该事件的方法体)
总结
TextBox控件是使用最广泛的文本编辑控件,有很多用于实现不同功能的属性,支持单行编辑和多行编辑,普通输入和密码输入,自动转换大小写等,使用简单且功能强大。
善用TextChange事件,可以实现输入检查,动态存取输入数据等功能。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。