0

我有一个数据输入表单,它的 DataCountext 绑定到一个 ViewModel 对象。

该表单包含(除其他外)许多 CheckBox 元素,每个元素都绑定到 ViewModel 中的一个布尔值。这些 CheckBox 分为两个 GroupBox。

有两个业务需求我不知道如何处理。

  1. 组框 1 中的至少一个复选框被选中,或者组框 2 中的至少一个复选框被选中。
  2. 如果选择了 groupbox 1 中的任何内容,则未选择 groupbox 2 中的所有内容,反之亦然。

有人有想法么?

4

2 回答 2

0

听起来像是我会在 ViewModel 中介绍的内容。VM 获取的是初始状态,该状态已经是有效状态(已选择某些内容)。如果用户现在选择了其他内容,您可以通过将其他组的属性设置为 false 来覆盖它。

于 2012-04-16T14:53:40.633 回答
0

问题 1 的解决方案很简单 - 让 VM 中的属性设置器清除不应设置的字段。绑定将适当地更新显示。

问题 2 的解决方案有点复杂。如果我想在 GroupBox 级别显示错误,我需要将 BindingGroup 附加到 GroupBox,并为其添加适当的 ValidationRule。

于 2012-04-19T21:58:31.970 回答