我在我的一个类中实现了IDataErrorInfo来验证该类的属性。该属性绑定到我的wpf用户控件上的一个控件。 validataion工作正常,除了有一个重要的缺陷。在实现IDataErrorInfo之后,如何在更新之后验证clr属性?
它似乎是在属性更新之前调用IDataErrorInfo成员public string this [string columnName],所以当我检查被更改的属性的值时,它包含的值不是刚才输入的值。因此,验证总是落后一步。这意味着我无法检查刚才输入的错误值。
有没有什么办法强制这个验证在属性更新之后被调用,而不是之前。我曾尝试将UpdateSourceTrigger更改为LostFocus和PropertyChanged,但他们仍然在不同的时间报告以前的值。
谢谢。
实际使用的一些XAML绑定会有帮助。同时我也想看看你是如何在BO中实施财产变更通知的。 – Trainee4Life 2009-09-18 18:38:36
您能否请您显示您遇到此问题的某个特定属性的实现(不必介意它已生成)? – 2009-09-24 22:16:50