xmlns:local="clr-namespace:Binding_Demo"
资源定义,以便于在控件中引用
<Window.Resources>
<local:DateConverter x:Key="dateconvert" />
</Window.Resources>
最后,则将值转换器应用到控件上,代码如下:
<TextBox Text="{Binding Date,Converter={StaticResource dateconvert}}" />
至此,一个简单的值转换器就完成了。
数据验证
在绑定中的验证主要设计四个属性:
- ValidatesOnDataErrors或者ValidatesOnNotifyDataErrors(WPF 4.5之后才有的)—— 与DataErrorValidationRule或NotifyDataErrorValidationRule组合使用
- ValidatesOnExceptions —— 与ExceptionValidationRule组合使用
- NotifyOnValidationError —— 控制是否触发Validation.Error事件,用于额外的内容处理
-
ValidationRules —— 验证规则,用于定义验证规则集合
下面我们以异常验证规则来简要介绍验证规则的使用 —— 验证处理涉及的内容有很多,单此一节无法描述完整,故仅列举最简单的使用方式:
首先是后台类的定义:
class ForExceptionValidate { private int max; public int Max { get { return max; } set { if (value > 100) { throw new Exception("Max不能超过100"); } max = value; } } } this.forvalidate.DataContext = new ForExceptionValidate();










