WPF 中一个列表里每一项有一个checkbox,checkbox根据后台的值设定选中或不选中?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 中一个列表里每一项有一个checkbox,checkbox根据后台的值设定选中或不选中?相关的知识,希望对你有一定的参考价值。
XAML中
<ListBox Name="AppListBoxT1" ItemsSource="Binding" HorizontalContentAlignment="Stretch" ScrollViewer.CanContentScroll="False" VerticalContentAlignment="Top" ScrollViewer.HorizontalScrollBarVisibility="Disabled" BorderThickness="0">
<ListBox.ItemTemplate>
<DataTemplate>
<CheckBox x:Name="shareType" Content="存在" Visibility="Binding PrivateType" Width="50" Height="20" HorizontalAlignment="Right" VerticalAlignment="Center" Checked="btnModiPrivate_check" Background="x:Null" Margin="0,0,60,-4" Cursor="Hand" ToolTip="选中时表示存在" BorderBrush="Black" IsChecked="Binding Path=CBIsChecked" FontFamily="Microsoft YaHei" FontWeight="Bold" Unchecked="PrivateType_Unchecked">
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
后台加载的时候应该怎么写才能根据数据库查询的值来选中或者不选中checkbox呢,新手,请各位大侠指点,谢谢关注。
ItemSource=Binding Collect
其中Collect类似如下结构:
OberservableCollection<DataItem> Collectget;set;
Class DataItem : INotifPropertyChanged
public bool DataIsCheckedget;set;
...
注意DataItem为了通知界面显示,需要实现INotifPropertyChanged这个接口,然后将CheckBox的IsChecked属性绑定到DataItem的DataIsChecked:形式如下
IsChecked="Binding DataIsChecked"
Wpf最关键的就是数据绑定,如果想灵活运用需要扎实的把这块看明白才行,祝您成功
以上是关于WPF 中一个列表里每一项有一个checkbox,checkbox根据后台的值设定选中或不选中?的主要内容,如果未能解决你的问题,请参考以下文章
WPF 根据指定条件显示或禁止listView中的每一项的右键菜单
如何给TreeView中的每一项加上可复选框的CheckBox?