在WPF中使用某些自定义验证器时,我的一位同事向我指出了IDataErrorInfo。我在XAML中有一个示例 View ,该 View 具有一个文本框和一个按钮。基于文本框中的值,我希望启用或禁用该按钮。我的同事建议在我的 View 演示者中扩展IDataErrorInfo并为“Item”和“Error”属性编写自定义逻辑将解决我的问题。在将其合并到代码中之前,我认为我应该了解IDataError信息的工作原理,以及实现提供触发自定义验证逻辑所必需的钩子(Hook)的接口(interface)的意义是什么?一些有关此概念的帮助将非常有帮助!
最佳答案
IDataErrorInfo是类可以实现的接口(interface),以便将特定属性的错误信息以及类级别的错误通知给订户。
如果为用作DataContext的类(即MVVM中的ViewModel)实现此功能,则可以将控件的UpdatesOnValidationError设置为true,并设置自定义模板以在出现错误时以不同方式显示该项目。 WPF为您处理管道。
这是一个short tutorial showing the entire process。
关于.net - 什么是IDataErrorInfo,它如何与WPF一起使用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1883803/