【问题标题】:Validating A WPF Datagrid Against Data From Another Datagrid针对来自另一个 Datagrid 的数据验证 WPF Datagrid
【发布时间】:2013-07-29 21:53:35
【问题描述】:

有没有办法使用 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 课程资料:ValidationRules 仅用作简单的验证(例如必填字段、数字格式等)。如果您需要高级/复杂的业务规则验证,您应该实现IDataErrorInfo 或创建自己的验证机制(这就是我所做的,它就像一个魅力)

标签: c# wpf validationrules


【解决方案1】:

来自 Microsoft 官方 WPF 课程材料:ValidationRules 仅用作简单的验证(例如必填字段、数字格式等)。如果您需要高级/复杂的业务规则验证,您应该实现 IDataErrorInfo 或创建自己的验证机制(这就是我所做的,它就像一个魅力)

【讨论】:

  • 这似乎是一个常见的场景,我有点惊讶微软的验证规则只支持简单的验证。您对自己的自定义验证框架如何做到这一点有任何见解吗?如果可以的话,我仍然想使用
猜你喜欢
  • 1970-01-01
  • 2018-05-16
  • 2014-08-25
  • 2012-12-09
  • 2018-09-06
  • 2011-09-29
  • 2011-06-29
  • 2011-02-22
  • 1970-01-01
相关资源
最近更新 更多