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呢,新手,请各位大侠指点,谢谢关注。

参考技术A 你好好看下binding,可以将CheckBox的ItemSource绑定到一个ICollection集合形式如下
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根据后台的值设定选中或不选中?的主要内容,如果未能解决你的问题,请参考以下文章

asp.net mvc 中模型验证如何处理数组呢?

WPF 根据指定条件显示或禁止listView中的每一项的右键菜单

c#wpf 中有没有checklistbox

如何给TreeView中的每一项加上可复选框的CheckBox?

WPF中添加一个Datagrid使用dataset双向绑定,在第一列中添加一列checkbox用来选择本行,

wpf点击checkbox触发了两次