当 DataGrid 控件绑定到 DataTable 时,我无法找出验证用户输入的方法。我看到的问题是:
- 我无法将自定义验证规则添加到数据源,即 DataTable,因为唯一可以添加到其中的约束是 UniqueConstraint 和 ForeignKeyConstraint。
- 覆盖网格中的 CellEditEnding 事件,然后设置属性 e.cancel = true - 其中参数 e 的类型为 DataGridCellEditEndingEventArgs - 在无效输入检测上无济于事,因为无论如何都会将无效值分配给基础 DataTable。
我之后的输入验证与业务规则有关,例如十进制值不能为负,另一个值必须在 10-25 的范围内。当然,必须有某种方法来执行这些规则。
谢谢。