WPF CheckedListBox EF MVVM

时间:2013-01-05 16:49:44

标签: wpf mvvm checkbox listbox

我知道这可能真的很愚蠢,但今天我的头脑无法正常工作。

我有一个患者实体和一个残疾人表。患者可以有0或多名残疾人。

如果我创建的ListBox ItemsSource绑定到ObservableCollection Disability,我如何将已选中/未选中的项目CheckBox挂钩到使用MVVM添加/删除患者残疾人集合中的残疾? CheckBox对我的患者实体的约束是什么?

1 个答案:

答案 0 :(得分:0)

CheckedListBox期望绑定到具有布尔属性的项列表,该布尔属性指示每个复选框的状态。但是,您的模型具有一个集合属性,您希望根据复选框状态添加/删除项目。

这听起来像是视图模型的工作!

PatientViewModel公开绑定到DisabilityViewModel的{​​{1}}个实例的集合,每个CheckedListBox实例都应具有DisabilityViewModel布尔属性。检测视图模型中此状态的更改,然后在IsChecked内更新已包装的PatientViewModel模型对象的状态。