DataGrid.RowValidationRules 属性    
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取用于验证每个行中的数据的规则。
public:
 property System::Collections::ObjectModel::ObservableCollection<System::Windows::Controls::ValidationRule ^> ^ RowValidationRules { System::Collections::ObjectModel::ObservableCollection<System::Windows::Controls::ValidationRule ^> ^ get(); };
	public System.Collections.ObjectModel.ObservableCollection<System.Windows.Controls.ValidationRule> RowValidationRules { get; }
	member this.RowValidationRules : System.Collections.ObjectModel.ObservableCollection<System.Windows.Controls.ValidationRule>
	Public ReadOnly Property RowValidationRules As ObservableCollection(Of ValidationRule)
	属性值
用于验证每行数据的规则。
示例
以下示例演示了一个用于检查对象的属性值Course是否StartDate早于其EndDate属性值的一个ValidationRule示例。 此代码示例是 有关如何:使用 DataGrid 控件主题实现验证 的较大示例的一部分。
public class CourseValidationRule : ValidationRule
{
    public override ValidationResult Validate(object value,
        System.Globalization.CultureInfo cultureInfo)
    {
        Course course = (value as BindingGroup).Items[0] as Course;
        if (course.StartDate > course.EndDate)
        {
            return new ValidationResult(false,
                "Start Date must be earlier than End Date.");
        }
        else
        {
            return ValidationResult.ValidResult;
        }
    }
}
Public Class CourseValidationRule
    Inherits ValidationRule
    Public Overrides Function Validate(ByVal value As Object, _
        ByVal cultureInfo As System.Globalization.CultureInfo) _
        As ValidationResult
        Dim course As Course = _
            CType(CType(value, BindingGroup).Items(0), Course)
        If course.StartDate > course.EndDate Then
            Return New ValidationResult(False, _
                "Start Date must be earlier than End Date.")
        Else
            Return ValidationResult.ValidResult
        End If
    End Function
End Class
以下示例在 RowValidationRules XAML 中设置属性。 该 ValidationStep 属性设置为 UpdatedValue ,以便仅在更新绑定数据对象后进行验证。 当用户指定早于开始日期的结束日期时,行标题中将显示一个红色感叹号 (!) 。
<DataGrid.RowValidationRules>
  <local:CourseValidationRule ValidationStep="UpdatedValue"/>
</DataGrid.RowValidationRules>
	注解
借助该 DataGrid 控件,可以在单元格和行级别执行验证。 使用单元格级验证,可以在用户更新值时验证绑定数据对象的单个属性。 通过行级验证,用户在提交对行的更改时验证整个数据对象。 若要创建自定义验证规则,请创建派生自 ValidationRule 该类并实现该方法的 Validate 类。 将自定义验证规则添加到 RowValidationRules 集合。
如果使用该 ItemBindingGroup 属性,则忽略该 RowValidationRules 属性。