在MVVM中IDataErrorInfo
用于验证。在这个时间索引器检查值无法获得。并在调用它之后如何检查我无法得到的值。代码就在这里。列名称传递的值是多少。
public string this[string columnName]
{
get { return GetValidationError(columnName); }
}
为什么在wpf中使用索引器进行验证。可以任何人说出来。
答案 0 :(得分:1)
如果使用IDataErrorInfo接口,则验证实现接口的类。
如果您有属性Name,激活验证并更改属性,则使用字符串columnName =“Name”调用索引器。现在,您可以在if语句中处理“名称”验证
if(columnName == "Name")
// do Name validation
//修改
如果通过绑定更改属性,则会在wpf中触发验证。你应该像这样装饰你的装订:
Text="{Binding UpdateSourceTrigger=LostFocus, Path=FirstName, ValidatesOnDataErrors=true, NotifyOnValidationError=true}"
以下是使用WPF数据绑定和errortemplate的IDataErrorInfo实现的简单明了的解释。