Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何验证使用IDataErrorInfo和WPF更改的不同属性?_Wpf_Validation_Idataerrorinfo - Fatal编程技术网

如何验证使用IDataErrorInfo和WPF更改的不同属性?

如何验证使用IDataErrorInfo和WPF更改的不同属性?,wpf,validation,idataerrorinfo,Wpf,Validation,Idataerrorinfo,我使用IDataErrorInfo来验证我的viewmodels,因为它允许我使用一个清晰的xaml sintax,一旦你得到它,它就非常简单了 我的问题是当另一个属性更改时如何验证一个属性,因为验证不仅取决于单元格上的值,还取决于其他属性。我看到只有当属性的值更改时才会调用验证方法 提前感谢。使用IDataErrorInfo,您可以连接到 public string this[string columnName] 通过重写它,或者编写自己的 在本例中,请检查columnName是否等于要验证

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

我的问题是当另一个属性更改时如何验证一个属性,因为验证不仅取决于单元格上的值,还取决于其他属性。我看到只有当属性的值更改时才会调用验证方法


提前感谢。

使用IDataErrorInfo,您可以连接到

public string this[string columnName]
通过重写它,或者编写自己的

在本例中,请检查columnName是否等于要验证的属性,然后返回一个字符串,该字符串的值表示验证错误,或者返回null表示没有错误


另外,为了确保它得到重新验证,当相关属性得到更新时,请确保使用IDataErrorInfo对主属性执行OnPropertyChanged操作,您可以将其挂接到

public string this[string columnName]
通过重写它,或者编写自己的

在本例中,请检查columnName是否等于要验证的属性,然后返回一个字符串,该字符串的值表示验证错误,或者返回null表示没有错误


另外,为了确保它得到重新验证,当相关属性得到更新时,确保对主属性执行OnPropertyChanged操作

,因此关键点是在更改主属性时调用不同属性的PropertyChanged事件。我会检查它,谢谢(无论如何有点奇怪)。所以关键点是在更改主属性时调用不同属性的PropertyChanged事件。我会检查的,谢谢(无论如何有点奇怪)。