У меня есть форма для входа в систему, в которой я проверяю несколько текстовых полей.
Вот код подтверждения для Textbox
:
private void Required_Validated(object sender, EventArgs e)
{
// clear errors set by provider
this.errorProvider1.SetError((Control)sender, null);
}
private void Required_Validating(object sender, CancelEventArgs e)
{
var control = (Control)sender;
if (!string.IsNullOrEmpty(control.Text))
{
// required field is filled up
return;
}
e.Cancel = true;
// show to user an error message
this.errorProvider1.SetError(control, Resources.RequiredFieldPopup);
}
Исходя из требований конечного пользователя, им не нравится поведение, создаваемое e.Cancel = true
в событии TextBox.Validating
- установка его в значение true заставляет пользователя вводить действительный ввод, и вы можете ' Перейдите к любому другому элементу управления, пока вы не исправите свой ввод .
Что было бы идеальной альтернативой / пересмотром проекта для этого общего проекта проверки, в котором события Validated
и Validating
оба используются в качестве предполагаемого проекта?