Winform ErrorProvider控件使用
using System; using System.Windows.Forms; namespace WindowsFormsApp16 { public partial class Form1 : Form { public Form1() { InitializeComponent(); // 设置闪烁样式 // BlinkIfDifferentError 当图标已经显示并且为控件设置了一个新的错误字符串时,闪烁。 // AlwaysBlink 当第一次显示错误图标时,或者当为控件设置了错误描述字符串而错误图标已经显示时,始终闪烁。 // NeverBlink 错误图标从不闪烁 this.errorProvider1.BlinkStyle = ErrorBlinkStyle.AlwaysBlink; // 错误图标的闪烁速率(以毫秒为单位)。默认为 250 毫秒 this.errorProvider1.BlinkRate = 500; } /// <summary> /// 登录验证 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty( this.textBox1.Text)) { // 设置要显示错误图标的控件,以及错误描述字符串。 this.errorProvider1.SetError(this.textBox1, "用户名不能为空"); return; } if (string.IsNullOrEmpty(this.textBox2.Text)) { // 设置要显示错误图标的控件,以及错误描述字符串。 this.errorProvider1.SetError(this.textBox2, "密码不能为空"); return; } } /// <summary> /// 用户名文本框焦点离开时判断 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void textBox1_Leave(object sender, EventArgs e) { if (string.IsNullOrEmpty(this.textBox1.Text)) { // 设置闪烁样式 // BlinkIfDifferentError 当图标已经显示并且为控件设置了一个新的错误字符串时,闪烁。 // AlwaysBlink 当第一次显示错误图标时,或者当为控件设置了错误描述字符串而错误图标已经显示时,始终闪烁。 // NeverBlink 错误图标从不闪烁 errorProvider1.BlinkStyle = ErrorBlinkStyle.BlinkIfDifferentError; // 设置错误图标距离控件的距离 errorProvider1.SetIconPadding(this.textBox1, 5); // 设置要显示错误图标的控件,以及错误描述字符串。 errorProvider1.SetError(this.textBox1, "用户名不能为空"); } else { // 验证成功,取消控件旁错误提示图标 errorProvider1.SetError(this.textBox1, ""); } } } }