ErrorProvider的使用心得

我们做软件交互界面时经常会对输入进行验证,ErrorProvider是验证winform界面输入的控件,主要步骤是:

(一)添加ErrorProvider组件

给Form窗口添加一个ErrorProvider组件,设置属性:ContainerControl,设置需验证的窗口Form。

(二)需验证的控件绑定

点击Databindings->Advanced,

ErrorProvider的使用心得

设置数据源更新模式:OnpropertyChanged和Onvalidation,其中OnpropertyChanged为绑定类属性,通过给属性赋值来验证,如下:

        public int TrainCountOfAnHour
        {
            get { return _trainCountOfAnHour; }
            set
            {
                if (value > 0 && value <= 30)
                {
                    _trainCountOfAnHour = value;
                    TrainIntervals = (int)(60.0 * 60 / _trainCountOfAnHour);
                    if (!IsSmallRun)
                    {
                        ScanTime = TrainIntervals * _scanTimeOfMult;
                    }
                    else
                    {
                        ScanTime = MinConmonMultiple(TrainIntervals, TrainIntervals1) * _scanTimeOfMult;
                    }
                }
                else
                {
                    throw new ArgumentOutOfRangeException("列车对数(对/小时)不能超出范围(1-30)");
                }
            }
        }

如果控件输入值不在0~30范围内,验证控件通不过。

ErrorProvider的使用心得

Onvalidation添加控件的Validated事件

ErrorProvider的使用心得

 private void tb_length_Validated(object sender, EventArgs e)
        {
            double l;
            if (double.TryParse(tb_Length.Text, out l))
            {
                if (l > 0)
                {
                    errorProvider1.SetError(tb_Length, "");
                }
                else
                {
                    errorProvider1.SetError(tb_Length, "必须是大于0数");
                    tb_Length.Focus();

                }
            }
            else
            {
                errorProvider1.SetError(tb_Length, "不是数字");
                tb_Length.Focus();
            }
        }

 

你可能感兴趣的:(Provider)