MaskedTextBox.MaskInputRejected Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Происходит в том случае, если назначенный или введенный пользователем знак не совпадает с соответствующим элементом формата маски ввода.
public:
event System::Windows::Forms::MaskInputRejectedEventHandler ^ MaskInputRejected;
public event System.Windows.Forms.MaskInputRejectedEventHandler MaskInputRejected;
public event System.Windows.Forms.MaskInputRejectedEventHandler? MaskInputRejected;
member this.MaskInputRejected : System.Windows.Forms.MaskInputRejectedEventHandler
Public Custom Event MaskInputRejected As MaskInputRejectedEventHandler
Тип события
Примеры
В следующем примере кода показано использование этого элемента. В этом примере обработчик событий сообщает о возникновении MaskInputRejected события. Этот отчет поможет вам узнать, когда происходит событие, и поможет вам в отладке. Чтобы сообщить о нескольких событиях или о событиях, которые происходят часто, рекомендуется заменить MessageBox.ShowConsole.WriteLine сообщение или добавить его в многостроочный TextBox.
Чтобы выполнить пример кода, вставьте его в проект, содержащий экземпляр типа MaskedTextBox с именем MaskedTextBox1
. Затем убедитесь, что обработчик событий связан с событием MaskInputRejected .
private void MaskedTextBox1_MaskInputRejected(Object sender, MaskInputRejectedEventArgs e) {
System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Position", e.Position );
messageBoxCS.AppendLine();
messageBoxCS.AppendFormat("{0} = {1}", "RejectionHint", e.RejectionHint );
messageBoxCS.AppendLine();
MessageBox.Show(messageBoxCS.ToString(), "MaskInputRejected Event" );
}
Private Sub MaskedTextBox1_MaskInputRejected(sender as Object, e as MaskInputRejectedEventArgs) _
Handles MaskedTextBox1.MaskInputRejected
Dim messageBoxVB as New System.Text.StringBuilder()
messageBoxVB.AppendFormat("{0} = {1}", "Position", e.Position)
messageBoxVB.AppendLine()
messageBoxVB.AppendFormat("{0} = {1}", "RejectionHint", e.RejectionHint)
messageBoxVB.AppendLine()
MessageBox.Show(messageBoxVB.ToString(),"MaskInputRejected Event")
End Sub
Комментарии
MaskInputRejected — это событие по умолчанию для MaskedTextBox класса .
Это MaskInputRejected событие возникает, когда символ отклоняется маской ввода. Маска ввода, представленная свойством Mask , интерпретируется поставщиком маскированного текста, связанным с элементом управления, через MaskedTextProvider свойство . MaskInputRejected возникает в следующих ситуациях:
Входной символ не соответствует соответствующему элементу формата. Например, пользователь вводит буквенный символ, когда требуется цифра. Это, вероятно, самая распространенная причина возникновения этого события.
Пользователь пытается ввести лишние символы за пределами маски, потому что маска уже заполнена или текущая позиция курсора была перемещена в самый конец отображаемой строки маски ввода.
Операция вставки либо вставляет символ, который не соответствует связанному с ним элементу форматирования, либо, если IsOverwriteMode свойство имеет значение
false
, она перемещает существующие символы в новые позиции, где они не соответствуют их элементам форматирования.Операция выреза сдвигает существующие символы влево, и один или несколько символов не соответствуют новым связанным элементам формата.
Свойство было присвоено Text , и назначенная строка вызвала одно или несколько нарушений маски.
Если элементу управления была назначена строка, которая вызывает MaskInputRejected возникновение, ни одна ее часть не будет отображаться в MaskedTextBox.
Обработка по умолчанию для MaskInputRejected будет воспроизводить звуковой сигнал, если BeepOnError свойство имеет значение true
. Это событие часто обрабатывается для реализации пользовательской обработки ошибок, например для перехода к следующему элементу управления вводом пользователя, если маска заполнена, или для отображения настраиваемого диалогового окна ошибки или подсказки, если входной символ недопустим.