我做了以下课程以避免重复 if else 代码,一次又一次:
public class Error
{
private ErrorProvider errProvider;
public void SetError(Control control, string value)
{
errProvider = new ErrorProvider();
if (control.Text.Trim().Length == 0)
{
errProvider.SetError(control, value);
}
else
{
errProvider.SetError(control, "");
}
}
}
文本框代码的验证是
private void textBox1_Validating(object sender, CancelEventArgs e)
{
erp.SetError(textBox1, "Please Enter Name");
}
- 在texbox中输入文本后,当我按下回车键时,它工作正常;
- 没有在文本框中输入任何内容,当我按 Enter 时,它也可以正常工作意味着出现 Waring 红色图标;但
- 警告后,当我在文本框中输入文本后按 Tab 时, 警告图标不会消失,它应该被删除。
没有类它可以使用相同的代码正常工作
更新?