У меня есть пара MaskedTextboxes, которые заполняются некоторыми косвенными действиями пользователя (то есть не прямым вводом значений). Текст внутри текстовых полей окрашивается в красный цвет, когда ввод отклоняется маской. Пока все в порядке.
Однако я не хочу, чтобы конечный пользователь мог редактировать поля напрямую. Итак, я добавил следующий код:
Код: Выделить всё
private void HandleMaskedTextBoxKeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = true;
}
private void HandleMaskedTextBoxKeyDown(object sender, KeyEventArgs e)
{
e.Handled = true;
e.SuppressKeyPress = true;
}
(Другой вариант — установить для свойства readonly полей значение true, но тогда текст больше не окрашивается в красный цвет, когда ввод отклонен. Я пытался принудительно использовать красный цвет в событии MaskInputRejected, но это тоже не сработало.)
Подробнее здесь: https://stackoverflow.com/questions/101 ... kedtextbox