我对 MSDN example 有点困惑。
目前尚不清楚如何处理和设置实体相关错误。
示例代码:
public System.Collections.IEnumerable GetErrors(string propertyName)
{
if (String.IsNullOrEmpty(propertyName) ||
!errors.ContainsKey(propertyName)) return null;
return errors[propertyName];
}
但是 GetErrors() 的文档指出:
另一个例子建议只返回字典的 _errors.Values。这只是所有属性错误,但又不是实体错误。
最佳答案
根据文档中的“备注”部分:MSDN: INotifyDataErrorInfo Interface
我可能会建议 GetErrors
的实现高度依赖于您的错误处理方案。例如,如果您不打算支持 Entity-Level
错误,那么您的示例代码就足够了。但是,如果您确实需要支持 Entity-Level
错误,那么您可以单独处理 IsNullOrEmpty
条件:
Public IEnumerable GetErrors(String propertyName)
{
if (String.IsNullOrEmpty(propertyName))
return entity_errors;
if (!property_errors.ContainsKey(propertyName))
return null;
return property_errors[propertyName];
}
关于wpf - 如何正确实现 INotifyDataErrorInfo?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15874453/