MaskedTextBox.Mask 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置运行时使用的输入掩码。
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 范围内的货币值。 在运行时,货币、千分位和小数字符将替换为其特定于区域性的等效字符。 |