我有一个复选框列表和一个复选框,对列表框中的所有项目充当CheckAll / UncheckAll。
如果在列表框绑定中检查了所有项目,如何检查chkAll复选框?
我可以在视图模型中创建一个属性来实现它。我想在xaml代码中完成它。
<ListBox Name="listBox" ItemsSource="{Binding mySource}">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelectedProperty}">
</CheckBox>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<CheckBox Name="chkAll" Content="CheckAll/UnCheckAll" IsChecked ={}/>
答案 0 :(得分:0)
我认为您需要具有反映此附加状态的更高级别视图模型属性。状态也有三个可能的值,因此请务必将IsThreeState
设置为true,并将其绑定到Nullable<bool>
。
然后在此属性的设置器中,您可以更新所有其他复选框属性。
对于每个项目IsSelectedProperty
,您还需要更新三州的财产。