我有一个基本表单,其中包含数据绑定到实现INotifyPropertyChanged接口的对象的控件。我想为几个属性添加一些验证,但不想通过实现IDataErrorInfo来验证几个属性。
我已经创建了执行验证并在对象中返回错误消息(如果适用)的函数。我想做的是在对象上的相关属性发生更改时从我的表单中调用这些函数,并在我的表单中设置ErrorProvider控件,其中包含从验证函数返回的任何错误消息。
我尝试将事件处理程序连接到 Validating 和 LostFocus 事件,但这些似乎在我的对象更新之前触发,因此它们没有验证正确的数据。只有当我离开文本框,返回然后再次离开时,验证才会针对正确的数据运行。
是否有另一个事件可以挂钩,以便在我的对象的属性更新后调用这些验证函数?还是我最好只实现IDataErrorInfo接口?