如何使用带有WPF的IDataErrorInfo验证更改的属性?

时间:2012-02-05 23:14:46

标签: wpf validation idataerrorinfo

我正在使用IDataErrorInfo来验证我的viewmodels,因为它允许我使用一个清晰​​的xaml sintax,一旦你得到它就非常简单。

我的问题是如何在另一个属性更改时验证一个属性,因为验证不仅仅包含单元格上的值,而是依赖于其他属性。我发现只有在属性值发生变化时才会调用验证方法。

提前致谢。

1 个答案:

答案 0 :(得分:1)

使用IDataErrorInfo可以挂钩

public string this[string columnName]

通过覆盖或自己编写。

在你的情况下检查columnName是否等于你想要验证的属性,然后返回一个带有值的字符串来表示验证错误,或者返回null表示没有错误。

另外,为确保重新验证,当依赖属性更新时,请确保为主属性执行OnPropertyChanged