你的位置:首页 > ASP.net教程

[ASP.net教程]WPF数据验证


当填写表单时,需要对填写的内容进行验证,检查数据是否符合要求,比如字符串的长度、日期的格式、数字等。WPF支持自定义验证规则,并提供可视化反馈,以便在输入无效值时向用户发出通知。

下面的示例将演示一个模拟员工信息录入的过程,员工的年龄为大于18的整数,工资为大于2500的数字,如果输入错误,将在文本框的后面显示一个红色的叹号,当鼠标移至错误文本框时,显示提示消息,提示用户正确的输入格式。

 

数据的验证

可以继承ValidationRule类,重写Validate方法,实现自定义的验证规则

下面是年龄的验证规则的实现:

  public class AgeRangeRule : ValidationRule  {    private int _min;    private int _max;    public AgeRangeRule()    {    }    public int Min    {      get { return _min; }      set { _min = value; }    }    public int Max    {      get { return _max; }      set { _max = value; }    }    public override ValidationResult Validate(object value, CultureInfo cultureInfo)    {      int age = 0;      try      {        if (((string)value).Length > 0)          age = Int32.Parse((String)value);      }      catch (Exception e)      {        return new ValidationResult(false, "输入的数字无效!");      }      if ((age < Min) || (age > Max))      {        return new ValidationResult(false,         "输入的年龄范围必须在: " + Min + " - " + Max + "之间");      }      else      {        return new ValidationResult(true, null);      }    }  }

View Code