大家好我有问题: 在WPF DataGrid中,我有一个可编辑的列,此colomn以百分比(%)为单位,此列中所有行的值总和不应超过100%。 例如,在网格中,我们有3行,在此列中,我们有20%20%60%的值。 总和将是100%。用户可以将60%变为75%的总和 115%,问题是如何在用户更改值时验证所有项目的总和? 标准ValidationRule仅适用于一个对我没有帮助的单元格。
请帮我解决这个问题的建议或解决方案。
提前致谢。
答案 0 :(得分:1)
一旦DataGrid
中的值发生变化,您应该验证数据源,而不是尝试验证DataGridCell
中的数据。假设DataSource
的{{1}}是DataGrid
。当单元格值更改返回到DataTable
并在其内部迭代所有列值以确保sum小于或等于100.如果不是让用户知道错误