У меня есть элемент управления listbox
. Я создал ItemTemplate
для этого listbox
, который имеет в нем два элемента управления.Использование Listbox в ItemTemplate
- Кнопка переключения
- управления Listbox
Структура
<Listbox x:Key="Listbox1" ItemTemplate={StaticResource ListBox1ParentItemTemplate}>
</Listbox>
<Datatemplate x:Key="ListBox1ParentItemTemplate">
<ToggleButton></ToggleButton>
<Listbox x:Key="Listbox1" ItemTemplate={StaticResource ListBox2ParentItemTemplate}>
</Listbox>
</Datatemplate>
<Datatemplate x:Key="ListBox2ParentItemTemplate">
<TextBlock Text="{Binding Mode=Default, [email protected]}" TextWrapping="Wrap"/>
<CheckBox DockPanel.Dock="Right" />
</Datatemplate>
В основном Listbox2
является CheckedListbox
. Мое требование таково: 1. Привяжите ToggleButton
к Listbox1 SelectedItem
i.e, если в элементе Listbox1
выбрано 4 элемента, то контрольная точка 4-го элемента должна быть проверена автоматически, а другая togglebutton должна быть снята. 2. Если установлен флажок ToggleButton
, все флажки в Listbox2
должны быть выбраны автоматически. Также, если один из флажков в Listbox2
не выбран, то ToogleButton
следует автоматически снять. (Эта функциональность похожа на TreeNode
и функциональность дочернего элемента. Если отмечен parentnode, все дочерние элементы выбираются и если один из дочерних узлов не выбран, родительский класс должен быть отменен).