Поделиться через


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. Этот элемент маски эквивалентен [a-zA-Z] в регулярных выражениях.
? Буква, необязательно. Ограничивает входные данные буквами ASCII a-z и A-Z. Этот элемент маски эквивалентен [a-zA-Z]? в регулярных выражениях.
& Символ, обязательный. AsciiOnly Если для свойства задано значение true, этот элемент ведет себя как элемент "L".
C Символ, необязательный. Любой символ, отличный от элемента управления. AsciiOnly Если для свойства задано trueзначение, этот элемент ведет себя как элемент "?".
A Буквенно-цифровые, обязательные. AsciiOnly Если для свойства задано trueзначение, будут приниматься только символы ASCII, буквы a-z и A-Z. Этот элемент маски ведет себя как элемент a.
a Буквенно-цифровые, необязательные. AsciiOnly Если для свойства задано trueзначение, будут приниматься только символы ASCII, буквы a-z и A-Z. Этот элемент маски ведет себя как элемент "A".
. Плейсхолдер для десятичных знаков. Фактический символ отображения будет десятичным символом, соответствующим поставщику формата, как определено свойством элемента управления FormatProvider .
, Заполнитель тысяч. Фактический символ отображения будет заполнителем тысяч, соответствующим поставщику формата, как определено свойством элемента управления FormatProvider .
: Разделитель времени. Фактический символ отображения будет символом времени, соответствующим поставщику формата, как определено свойством элемента управления FormatProvider .
/ Разделитель дат. Фактический символ отображения будет символом даты, соответствующим поставщику формата, как определено свойством элемента управления FormatProvider .
$ Символ валюты. Фактически отображаемый символ будет символом валюты, соответствующим поставщику формата, как определено свойством элемента управления FormatProvider .
< Сдвиг вниз. Преобразует все следующие символы в строчные.
> Сдвиг вверх. Преобразует все последующие символы в верхний регистр.
| Отключите предыдущий сдвиг вверх или вниз.
\ Побег. Экранирует символ маски, преобразуя его в обычный текст. "\\\\" — это символ экранирования для обратного слэша.
Все остальные символы Литералы. Все элементы, отличные от маски, будут отображаться в пределах MaskedTextBox. Литералы всегда занимают статическую позицию в маске во время выполнения и не могут быть перемещены или удалены пользователем.

Если вы изменяете маску, когда MaskedTextBox уже содержит входные данные пользователя, отфильтрованные по предыдущей маске, MaskedTextBox попытается перенести эти входные данные в новое определение маски. Если он завершается ошибкой, он очищает существующие входные данные. Назначение строки нулевой длины в качестве маски сохранит все существующие данные в элементе управления. При использовании с маской MaskedTextBox нулевой длины работает как однострочный TextBox элемент управления.

Десятичные (.), тысячные (,), время (:), дата (/), и символы валюты ($) по умолчанию отображаются так, как это определено языковыми и региональными параметрами приложения. Можно заставить их отображать символы другой культуры, используя свойство FormatProvider.

Вставка символов в маску во время выполнения управляется свойством InsertKeyMode . Пользователи могут перемещаться по маске с помощью клавиш со стрелками влево и вправо или курсора мыши и пропускать дополнительные позиции в маске, вводя пробел.

Это важно

MaskedTextBox поддерживает все символы Юникода, кроме суррогатов и вертикальных объединенных символов.

В следующей таблице показаны примеры маски.

Mask Поведение
00/00/0000 Дата (день, числовой месяц, год) в международном формате даты. Символ "/" является логическим разделителем даты и будет отображаться пользователю в качестве разделителя даты, соответствующего текущему языку и региональных параметров приложения.
00->L<LL-0000 Дата (день, аббревиатура месяца и год) в формате США, в котором трехбуквенное сокращение месяца отображается с начальной прописной буквой и двумя строчными буквами.
(999)-000-0000 Номер телефона Сша, код области необязательный. Если пользователи не хотят вводить необязательные символы, они могут вводить пробелы или помещать указатель мыши непосредственно в положение в маске, представленной первым 0.
$999,999.00 Значение валюты в диапазоне от 0 до 999999. Денежные, тысячные и десятичные символы будут заменены во время выполнения их эквивалентами, соответствующими языковым и региональным параметрам.

Применяется к

См. также раздел