我正在使用带有WCF Ria服务和实体框架的MVVM模式处理Silverlight应用程序。 在我的元数据类中,我有验证规则,当我从前端表单提交实体数据时(使用twoway -databinding),它可以很好地工作。
但是现在我想在我的一个文本框中的LostFocus事件中只验证一个属性。
我在viewmodel类中试过这段代码:
Validator.ValidateProperty(myEntity.FirstName,
new ValidationContext(myEntity, null, null)
{
MemberName = "FirstName"
});
代码运行,但没有任何反应。没有例外,即使属性FirstName为空(也尝试过其他属性)。正如我所提到的,当我将表单提交给EF时,验证工作正常。
有没有人有关于如何在不提交所有内容的情况下验证单个属性的提示?
答案 0 :(得分:0)
在ur属性之前的元数据中添加此 [必需(ErrorMessage =“请输入FirstName。”)] 然后在控件中绑定属性添加此内容 Mode = TwoWay,NotifyOnValidationError = True,ValidatesOnDataErrors = True
这可能会帮助你:)