admin 管理员组

文章数量: 887021


2023年12月18日发(作者:javascript和java性能bbw)

C# TextBox控件

在希望用户输入程序员在设计阶段不知道的文本(如用户的姓名)时,应使用文本框。文本框的主要用途是让输入文本,用户可以输入任何字符,也可以限制用户只输入数值。

.NET Framework内置了两个基本控件来提取用户输入的文本:TextBox和RichTextBox。这两个控件都派生于基类TextBoxBase派生于Control。

TextBoxBase提供了在文本框中处理文本的基本功能,例如选择文本、剪切和从剪切板上粘贴,以及许多事件。这里不讨论什么对象派生于什么类,而是先介绍两个控件中比较简单的一个:TextBox。

如本章前面所述,列出控件的所有属性是不可能的,所以这里仅列出最常见的属性,如表8-5所示。

表8-5 TextBox控件的属性

属性

CausesValidation

说明

当控件的该属性设置为true,且该控件获得焦点时,将会触发Validating事件和Validated事件。通过这两个事件可以验证失去焦点的控件中数据的有效性。

CharacterCasing 该属性用于设置TextBox控件是否会改变输入的大小写。可以取值如下所示:

(1)Lower 文本框中输入的所有文本都转换为小写

(2)Normal 不对文本框内容进行任何转换

(3)Upper 文本框中输入的所有文本都转换为大写

MaxLength

Multiline

PasswordChar

ReadOnly

ScrollBars

SelectedText

SelectionLenth

SelectionStart

WordWrap

该属性用于设置能输入到TextBox中字符的数量。如果这个属性值设置为0,表示最大字符长度仅限于可用的内存

该属性用于设置该控件是否是一个多行控件。如果该属性值设置为true,那么用户可以输入多行文本信息

该属性用于设置使用密码字符替换在单行文本框中输入的字符。如果Multiline属性为true,该属性将不起作用

该属性用于设置文本框是否为只读

该属性用于设置指定为多行文本框时是否显示滚动条

该属性用于设置在文本框中选择的文本

该属性用于设置在文本中选择的字符数。如果这个值设置得比文本中总字符数大,则控件会把它重新设置为字符总数减去SelectionStart的值

该属性用于设置文本框中被选中文本的开头

该属性用于设置在多行文本框中,如果一行的宽度超出了控件的宽度,

其文本是否应自动换行

除了上表中的属性外,TextBox控件还继承了命名空间中Control类的各种属性和事件。根据TextBox控件的特点,可以将其继承的事件分为三大类,如表8-6所示。

表8-6 TextBox控件的事件

事件

Enter、GetFocus、Leave、Validating、Validated、LostFocus

KeyUp

TextChanged、TextAlignChanged、SizeChanged、StyleChanged、ParentChanged等

说明

这6个事件按照列出的顺序触发,它们统称为“焦点事件”,当控件的焦点发生改变时触发,但Validating和Validated事件例外,它们仅在控件获得了焦点,且其CausesValidation属性设置为true时触发。

KeyDown、KeyPress、这3个事件称为“键事件”。它们可以监视和改变输入到控件中的内容,KeyDown和KeyUp获取与按下键对应的键码,这样就可以确定用户是否按下了键Shift、Ctrl或F1

这些事件可以称为“改变事件”,因为只要文本框的文本信息,以及它的属性或其他相关控件,无论发生什么改变,都有可能触发这些改变事件。其中TextChanged事件是比较常用的事件


本文标签: 控件 文本 设置 属性 文本框