C#WPF MVVM数据验证
我有以下WPF-MVVM设置:
目的是在整个表单正确验证后立即启用该按钮。 我的两个问题是:
您的CanExecute
处理程序应该简单地引用您的HasErrors
属性:
... (canExecute) => !HasErrors; ...
•如何实现按钮中继命令的CanExecute方法,而无需针对每个属性更改调用整个模型的验证?
你能告诉我财产系统如果在每次击键后都没有检查是否有任何验证错误,可能会知道吗? 想想看......任何关键的中风都可能导致模型无效。 无论哪种方式,您都不会注意到任何延迟,因为它会重新验证模型。
•什么是“延迟”UpdateSourceTrigger以在每次按键上设置相应属性的最佳方式,例如,在“无输入”后一秒钟?
如果您使用的是.NET 4.5,那么您很幸运...... Microsoft刚刚为Binding
类添加了一个Delay
属性。 这使您可以设置在目标上的值更改后更新绑定源之前需要等待的时间量(以毫秒为单位)。 有关完整信息,请参阅MSDN上的BindingBase.Delay属性页。