绑定在 WPF 中非常强大。假设我们有一个 Number 属性(可为 null 的 int)并绑定到一个文本框。
我意识到当它引发错误时,该属性具有最后一个正确的值。
我的意思是这些是过程:
TEXTBOX: "" PROPERTY: null
TEXTBOX: "2" PROPERTY: 2
TEXTBOX: "2b" PROPERTY: 2 <-- here is the problem, should be null instead 2(by the error)
有没有办法在绑定产生错误时设置空值?
有人告诉我我需要实现 IDataErrorInfo,但我猜这个接口是为了验证业务规则。所以我不喜欢使用它。
更新:
<TextBox Text="{Binding Number, UpdateSourceTrigger=PropertyChanged,
ValidatesOnExceptions=True, ValidatesOnDataErrors=True,
NotifyOnValidationError=True, TargetNullValue={x:Static sys:String.Empty}}"