У меня есть ListBox, содержащий CheckBoxes. Xaml выглядит так:
<ListBox x:Name="lbContactTypes">
<ListBox.ItemTemplate>
<HierarchicalDataTemplate>
<CheckBox Content="{Binding Path=Description}" IsChecked="{Binding Path=ContactTypes, Converter={x:Static Classes:ListContainsConverter.Instance}, ConverterParameter=1}" />
</HierarchicalDataTemplate>
</ListBox.ItemTemplate>
</ListBox>
Я связываю ItemsSource в своем коде так:
lbContactTypes.ItemsSource = GetLeadContactTypes();
Пока все хорошо. Три флажка генерируются с правильным содержанием. Теперь я хотел бы установить свойство IsChecked для другого объекта, который содержит текущие данные для сущности, с которой я работаю.
Чтобы пояснить немного, я установил DataContext окна для объекта Customer, который среди прочего содержит ObservableCollection of ContactTypes, и я хотел бы привязать эти ContactTypes к свойству IsChecked, чтобы флажки были проверены. Я проверяю, содержит ли ObservableCollection желаемое целое число, вызывая конвертер ListContainsConverter, который возвращает bool. Возможно ли это?