学习WPF之 Binding
public _02Binding_ValidationRules() { InitializeComponent(); Binding binding = new Binding("Value") { Source = slider1, UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged }; RangeValidationRule rvr = new RangeValidationRule(); rvr.ValidatesOnTargetUpdated = true; binding.ValidationRules.Add(rvr); binding.NotifyOnValidationError = true; textBox1.SetBinding(TextBox.TextProperty, binding); this.textBox1.AddHandler(Validation.ErrorEvent, new RoutedEventHandler(ValidationError)); //this.slider1.AddHandler(Validation.ErrorEvent, new RoutedEventHandler(ValidationError2)); } void ValidationError(Object sender, RoutedEventArgs e) { if (Validation.GetErrors(this.textBox1).Count > 0) { textBox1.ToolTip = Validation.GetErrors(this.textBox1)[0].ErrorContent.ToString(); } } public class RangeValidationRule : ValidationRule { public override ValidationResult Validate(object value, CultureInfo cultureInfo) { double d; if (double.TryParse(value.ToString(), out d)) { if (d >= 0 && d <= 100) { return new ValidationResult(true, null); } } return new ValidationResult(false, "验证失败!"); } }
,温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/67319.html