我知道这可能真的很愚蠢,但今天我的头脑无法正常工作。
我有一个患者实体和一个残疾人表。患者可以有0或多名残疾人。
如果我创建的ListBox
ItemsSource
绑定到ObservableCollection
Disability
,我如何将已选中/未选中的项目CheckBox
挂钩到使用MVVM添加/删除患者残疾人集合中的残疾? CheckBox
对我的患者实体的约束是什么?
答案 0 :(得分:0)
CheckedListBox
期望绑定到具有布尔属性的项列表,该布尔属性指示每个复选框的状态。但是,您的模型具有一个集合属性,您希望根据复选框状态添加/删除项目。
这听起来像是视图模型的工作!
从PatientViewModel
公开绑定到DisabilityViewModel
的{{1}}个实例的集合,每个CheckedListBox
实例都应具有DisabilityViewModel
布尔属性。检测视图模型中此状态的更改,然后在IsChecked
内更新已包装的PatientViewModel
模型对象的状态。