MaskedTextBox.Mask 属性

定义

获取或设置运行时使用的输入掩码。

public:
 property System::String ^ Mask { System::String ^ get(); void set(System::String ^ value); };
public string Mask { get; set; }
member this.Mask : string with get, set
Public Property Mask As String

属性值

一个 String,表示当前掩码。 默认值是允许任何输入的空字符串。

例外

提供给 Mask 属性的字符串不是一个有效掩码。 无效掩码包括含不可打印字符的掩码。

注解

Mask 是 类的默认属性 MaskedTextBox

Mask 必须是由一个或多个掩码元素组成的字符串,如下表所示。 使用的 MaskedTextBox 掩码语言由其关联的 MaskedTextProvider定义。 标准提供程序根据 Visual Basic 6.0 中掩码编辑控件使用的掩码语言指定掩码语言,并且应该非常熟悉从该平台迁移的用户。

掩码元素 说明
0 数字,必需。 此元素将接受 0 到 9 之间的任何个位数。
9 数字或空格,可选。
# 数字或空格,可选。 如果此位置在掩码中为空,则它将呈现为 属性中的 Text 空格。 允许输入加号 (+) 和减号 (-)。
L 信函,必需。 将输入限制为 ASCII 字母 a-z 和 A-Z。 此 mask 元素等效于正则表达式中的 [a-zA-Z]。
? 字母,可选。 将输入限制为 ASCII 字母 a-z 和 A-Z。 此 mask 元素等效于 [a-zA-Z]? 正则表达式中的 。
& 字符,必需。 如果 属性 AsciiOnly 设置为 true,则此元素的行为类似于“L”元素。
C 字符,可选。 任何非控制字符。 如果 属性 AsciiOnly 设置为 true,则此元素的行为类似于“?”元素。
A 字母数字,必需。 如果 属性 AsciiOnly 设置为 true,则它接受的唯一字符是 ASCII 字母 a-z 和 A-Z。 此 mask 元素的行为类似于“a”元素。
a 字母数字,可选。 如果 属性 AsciiOnly 设置为 true,则它接受的唯一字符是 ASCII 字母 a-z 和 A-Z。 此掩码元素的行为类似于“A”元素。
. 小数点占位符。 使用的实际显示字符将是适合格式提供程序的小数符号,由 控件的 FormatProvider 属性确定。
, 千位占位符。 使用的实际显示字符将是适合格式提供程序的千位占位符,由控件的 FormatProvider 属性确定。
: 时间分隔符。 使用的实际显示字符将是适合格式提供程序的时间符号,由控件的 FormatProvider 属性确定。
/ 日期分隔符。 使用的实际显示字符将是适合格式提供程序的日期符号,由 控件的 FormatProvider 属性确定。
$ 货币符号。 显示的实际字符将是适合格式提供程序的货币符号,由 控件的 FormatProvider 属性确定。
< 向下移动。 将后面的所有字符转换为小写。
> 向上移动。 将后面的所有字符转换为大写。
| 禁用上一班或下移。
\ 逃脱。 转义掩码字符,将其转换为文本。 “\\”是反斜杠的转义序列。
所有其他字符 文字。 所有非掩码元素将在 MaskedTextBox 中按原样显示。 文本在运行时始终占据掩码中的静态位置,用户不能移动或删除文本。

如果在已包含由上一个掩码筛选的用户输入时 MaskedTextBox 更改掩码, MaskedTextBox 将尝试将该输入迁移到新的掩码定义。 如果失败,它将清除现有输入。 将零长度字符串分配为掩码将保留控件中的任何现有数据。 与零长度掩码一起使用时, MaskedTextBox 其行为类似于单行 TextBox 控件。

小数 (.)、千分位 (,)、时间 (:)、日期 (/) 和货币 ($) 符号默认根据应用程序的区域性定义显示这些符号。 可以使用 FormatProvider 属性强制它们显示另一种区域性的符号。

在运行时将字符插入掩码由 InsertKeyMode 属性控制。 用户可以使用向左键和向右键或鼠标光标浏览掩码,并通过输入空格跳过掩码中的可选位置。

重要

MaskedTextBox 支持除代理项和垂直组合字符之外的所有 Unicode 字符。

下表显示了示例掩码。

Mask 行为
00/00/0000 采用国际日期格式的日期 (天、数字月份、年) 。 “/”字符是一个逻辑日期分隔符,它将作为与应用程序的当前区域性相对应的日期分隔符显示给用户。
00->L<LL-0000 采用美国格式的日期(日、月缩写和年),此格式显示三字母缩写形式的月份,其中第一个字母大写,后面两个字母小写。
(999)-000-0000 美国电话号码(区号是可选的)。 如果用户不想输入可选字符,可以输入空格或将鼠标指针直接放在第一个 0 表示的掩码中的位置。
$999,999.00 0 到 999999 范围内的货币值。 在运行时,货币、千分位和小数字符将替换为其特定于区域性的等效字符。

适用于

另请参阅