根据来自另一个数据网格的数据验证WPF数据网格

本文关键字:数据 数据网 网格 验证 WPF 另一个 | 更新日期: 2023-09-27 18:25:29

是否有一种方法可以使用WPF ValidationRules使用同一表单上另一个数据网格中的数据来验证更新后的字段?

我的页面如下:

Ranges
Min Max
 1  10
Rank
 5

因此,在这种情况下,Rank是更新的,我需要确保它在另一个数据网格上的rangea中的最小值和最大值之间。我使用这个模式来验证来自网格的数据,但当我需要从另一个网格传递数据时,它不起作用:

public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
        EF.Rank rank = (value as BindingGroup).Items[0] as EF.Rank;
        //Need to Access the Ranges list from another datagrid on the same page to validate the the rank that was entered is between the min and max which can be adjusted.
}

根据来自另一个数据网格的数据验证WPF数据网格

来自微软官方WPF课程材料:验证规则只能用作简单的验证(例如必填字段、数字格式等)。如果您需要高级/复杂的业务规则验证,您应该实现IDataErrorInfo或创建自己的验证机制(我就是这么做的,它的工作原理很有魅力)