Подтвердить форму в C#

Пример Использование события Validating в C# объясняет, как вы можете использовать обработчик событий Validating, чтобы проверить значение поля, когда фокус покидает это поле. Если значение поля недействительно, программа может отображать сообщение, помечать ошибку (возможно, с помощью компонента ErrorProvider) и установить e.Cancel = true, чтобы предотвратить фокус с оставляя поле.

К сожалению, этот метод имеет несколько недостатков. Сначала он перехватывает пользователя в поле до тех пор, пока значение не будет действительным. Если пользователь еще не знает допустимого значения, это предотвращает преждевременное заполнение других полей, и это может расстраивать.

Очень опытные пользователи также часто набирают «головы вниз», не глядя на форму. В этом случае пользователь может не заметить ошибку до конца и может продолжать вводить больше значений в недопустимое поле.

Очень опытные пользователи также часто набирают «головы вниз», не глядя на форму. В этом случае пользователь может не заметить ошибку до конца и может продолжать вводить больше значений в недопустимое поле.

...

Этот пример демонстрирует лучшее решение. Он использует Validating обработчики событий для отметки недопустимых полей, но не устанавливает e.Cancel в true, чтобы пользователь мог оставить неправильные поля. Позже, когда пользователь нажимает кнопку «ОК», форма проверяет поля, чтобы убедиться, что они недействительны.

Дополнительную информацию об использовании событий Validating см. в предыдущем примере. Следующий код показывает, как кнопка OK проверяет все поля примера.

Этот код сначала вызывает методы проверки для проверки всех TextBox es.

Затем он проходит через каждый элемент управления в форме. Для каждого элемента управления код использует метод ErrorProvider объекта GetError для получения ошибки, связанной с этим элементом управления. Если какой-либо элемент управления имеет непустое сообщение об ошибке, программа отображает его в окне сообщения и выходит из обработчика событий.

Если ни один из элементов управления не имеет сообщения об ошибке, программа отображает введенные значения.

Источник: http://csharphelper.com/blog/2016/02/validate-a-form-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *