我正在使用新的Silverlight 4支持IDataErrorInfo。所以我有一个POCO对象已经实现了接口,当验证规则触发Silverlight UI时,正确显示错误。所以一切正常。
POCO对象如下所示:
public class SomeDomainClass : IDataErrorInfo
{
public string SomeString { get; set; }
public string Error
{
get { return String.Empty; }
}
public string this[string columnName]
{
get
{
if (columnName == "SomeString" && PolicyNumber.Contains("%"))
return "SomeString cannot contain '%'. You'll ruin everything!!!";
return String.Empty;
}
}
}
但是,我希望能够检测页面上是否有任何错误。例如,如果我有一个“保存”按钮,并且我想在出现错误时禁用它,或者显示消息或其他内容。
检测页面上是否存在验证错误的最佳方法是什么?是否有基于Silverlight中IDataErrorInfo支持的工具?或者我是否必须自己在域模型中跟踪它?