【WPF】一组CheckBox的全选/全不选功能

70 篇文章 5 订阅

需求:给一组CheckBox做一个全选/全不选的按钮。

思路:CheckBox不像RadioButton那样拥有GroupName属性来分组,于是我想的方法是将这组CheckBox放到一个布局容器中,给这个布局容器命名,后台代码通过名字找到该布局控件,再获取它的所有子类,即可操作这一组CheckBox。

前台代码:

<WrapPanel Name="materialTabItem" Orientation="Horizontal">
    <CheckBox Name="selectAllBtn" Click="selectAll_OnClick" Content="全选/全不选" Margin="5"/>
    <CheckBox Content="实木地板" Margin="5"/>
    <CheckBox Content="硅藻泥" Margin="5"/>
    <CheckBox Content="涂料" Margin="5"/>
</WrapPanel>

对应的后台代码:

private void selectAll_OnClick(object sender, RoutedEventArgs e)
{
    bool flag = selectAllBtn.IsChecked == true ? true : false;
    for (int i = 0; i < materialTabItem.Children.Count; i++)
    {
        var item = materialTabItem.Children[i];
        if (item is CheckBox)
        {
            CheckBox checkBoxItem = (CheckBox)item;
            checkBoxItem.IsChecked = flag;
        }
    }
}

运行效果如下:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值