Первый пост! Я новичок в С# и errorProvider. Я искал лучшие практики использования errorProvider. Я нашел следующий код:
void TextBox_Validating( object sender, CancelEventArgs e ) {
TextBox textBox = sender as TextBox;
bool valid = textBox.TabIndex == 1 || textBox.Text.Length > 0;
if( !valid )
m_ErrorProvider.SetError( textBox, "Error " + textBox.Name );
e.Cancel = !valid;
}
private void TextBox_Validated(object sender, System.EventArgs e) {
TextBox textBox = sender as TextBox;
m_ErrorProvider.SetError(textBox, "");
}
Вместо обработки события Validated я просто удалял ошибку на пути к событию Validating и позволял снова установить ошибку в этом обработчике событий следующим образом:
void TextBox_Validating( object sender, CancelEventArgs e ) {
TextBox textBox = sender as TextBox;
m_ErrorProvider.SetError(textBox, "");
bool valid = textBox.TabIndex == 1 || textBox.Text.Length > 0;
if( !valid )
m_ErrorProvider.SetError( textBox, "Error " + textBox.Name );
e.Cancel = !valid;
}
Моя проверка более сложная, чем эта, где у меня есть несколько мест, где она будет очищена. И мой опыт — встроенный код, где эта техника распространена.
Является ли обработка события Validated лучшей практикой? Спасибо.