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。 此 mask 元素的行為就像 「A」 元素。 |
. | 小數預留位置。 使用的實際顯示字元會是適合格式提供者的十進位符號,如控件的 FormatProvider 屬性所決定。 |
, | 千位佔位元。 使用的實際顯示字元會是適合格式提供者的千位佔位元,如控件的 FormatProvider 屬性所決定。 |
: | 時間分隔符號。 使用的實際顯示字元會是適合格式提供者的時間符號,如控件的 FormatProvider 屬性所決定。 |
/ | 日期分隔符號。 使用的實際顯示字元會是適合格式提供者的日期符號,如控件的 FormatProvider 屬性所決定。 |
$ | 貨幣符號。 顯示的實際字元會是適合格式提供者的貨幣符號,如控件的 FormatProvider 屬性所決定。 |
< | 向下移位。 將後面的所有字元轉換成小寫。 |
> | 向上移位。 將後面的所有字元轉換成大寫。 |
| | 停用上一個移位或向下移位。 |
\ | 逃脫。 逸出遮罩字元,將其轉換為常值。 "\\" 是反斜線的逸出序列。 |
所有其他字元 | 常值。 所有非遮罩元素都會以自身顯示在 MaskedTextBox 中。 常值一律會在運行時間佔用遮罩中的靜態位置,而且使用者無法移動或刪除。 |
如果您變更遮罩時 MaskedTextBox 已經包含先前遮罩篩選的使用者輸入, MaskedTextBox 將會嘗試將該輸入移轉至新的遮罩定義。 如果失敗,則會清除現有的輸入。 指派長度為零的字串,因為遮罩會保留 控件中的任何現有數據。 與長度為零的遮罩搭配使用時, MaskedTextBox 其行為就像單行控件一樣 TextBox 。
小數點 (.)、千位 (,)、時間 (:)、日期 (/) 和貨幣 ($) 符號,預設為如應用程式文化特性所定義顯示這些符號。 您可以使用 FormatProvider 屬性,強制顯示另一個文化特性的符號。
在運行時間插入遮罩中的字元是由 屬性所控制 InsertKeyMode 。 使用者可以使用向左鍵和向右鍵或滑鼠游標流覽遮罩,並輸入空格來略過遮罩中的選擇性位置。
重要
MaskedTextBox 支援除了 Surrogate 和垂直合併字元以外的所有 Unicode 字元。
下表顯示範例遮罩。
Mask | 行為 |
---|---|
00/00/0000 |
日期 (日、數值月份、年) 國際日期格式。 “/” 字元是邏輯日期分隔符,用戶會顯示為應用程式目前文化特性適用的日期分隔符。 |
00->L<LL-0000 |
以美國格式顯示的日期 (日、月縮寫和年),其三個字母月份縮寫開頭為大寫字母後面接著兩個小寫字母。 |
(999)-000-0000 |
美國電話號碼,區碼為選擇性。 如果使用者不想要輸入選擇性字元,他們可以輸入空格,或將滑鼠指標直接放在前 0 個所代表遮罩中的位置。 |
$999,999.00 |
介於 0 到 999999 範圍內的貨幣值。 貨幣、千位和小數點字元,會在執行階段以其文化特性專屬的同等項目取代。 |