续。。。。。。。。

 

4. TextBox控件

文本框的主要用途是让用户输入文本,用户可以输入任何字符,也可以限制用户只输入数值。

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

TextBoxBase提供了在文本框中处理文本的基本能力,例如选择文本、剪切和从剪切板上粘帖,以及许多事情。

4.1 TextBox控件的属性

常用属性:

  • CausesValidation:当控件的这个属性为true,且该控件获得了焦点时,会引发两个事件:Validating和Validated。可以处理这些事件,以便验证失去焦点的控件中数据的有效性。
  • CharacterCasing:这个值表示TextBox是否会改变输入的文本的大小写。可能的值有:
    1. Lower:文本框中输入的所有文本都转换为小写;
    2. Normal:不变;
    3. Upper:都转换为大写。
  • MaxLength:这个值指定输入到TextBox中的文本的最大字符长度。如果设为0,表示最大字符长度仅受限于可用的内存。
  • Multiline:表示该控件是否是一个多行控件。多行控件可以显示多行文本。
  • PasswordChar:指定是否用密码字符替换在单行文本框中输入的字符。如果Multiline属性为true,这个属性就不起作用。
  • ReadOnly:这个Boolean值表示文本是否为只读。
  • ScrollBars:指定多行文本框是否显示滚动条。
  • SelectedText:在文本框中选择的文本。
  • SelectionLength:在文本中选择的字符数。如果这个值设置得比文本中的字符数大,则控件会把它重新设置为字符总数减去SelectionStart的值。
  • SelectionStart:文本框中被选中文本的开头。
  • WordWrap:指定在多行文本框中,如果一行的宽度超出了控件的宽度,其文本是否应自动换行。
 

4.2 TextBox控件的事件

TextBox提供了以下所示的事件:

  • Enter、Leave、Validating、Validated:这4个事件按照列出的顺序引发。它们统称为焦点事件,当控件的焦点发生改变时引发,但有两个例外:Validating和Validated仅在控件接收了焦点,且其CausesValidation属性设置为true时引发。接收焦点的控件引发事件的原因是有时即使焦点改变了,我们也不希望验证控件的有效性。
  • KeyDown、KeyPress、KeyUp:这三个事件称为“键事件”。它们可以监视和改变输入到控件中的内容。KeyDown和KeyUp接收与所按下键对应的键码,这样就可以确定是否按下了特殊的键Shift或Control和F1。另一方面,KeyPress接收与键对应的字符。这表示字母a的值与A的值不同。
  • Change:只要文本框的文本发生了改变,就会引发该事件。