小编iYa*_*dav的帖子

DataGrid列标题应该检查/取消后根据CheckBox的状态一个DataGridView列的所有CheckBox是否选中或取消选中

在此输入图像描述我遇到的问题与DataGrid(WPF)中的复选框有关.我已附上截图以更好地理解问题.

问题:即使其中一个子项未选中,也会检查DataHeader列复选框.我希望解决方案能够解决这个问题,以便在用户明确取消选中其中一个子节点时,应该隐式取消选中ALL(列标题).

请帮助大家......谢谢Plz检查链接.我希望解决方案能够像这样工作.http://www.codeproject.com/Articles/42437/Toggling-the-States-of-all-CheckBoxes-Inside-a-Dat#

<dg:DataGrid.Columns>
    <dg:DataGridCheckBoxColumn Binding="{Binding Check}" IsThreeState="True" Width="50">
        <dg:DataGridCheckBoxColumn.HeaderTemplate>
            <DataTemplate x:Name="dtAllChkBx">
                <CheckBox Name="cbxAll" Content="{x:Static properties:Resources.lblAll}"
                          Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked" />
            </DataTemplate>
        </dg:DataGridCheckBoxColumn.HeaderTemplate>
    </dg:DataGridCheckBoxColumn>
Run Code Online (Sandbox Code Playgroud)

.

private void CheckBox_Unchecked(object sender, RoutedEventArgs e)
{
    unchck_all_prd();
    dgEnggAcc.Items.Refresh();
}

private void unchck_all_prd()
{
    for (int i = 0; i < engg_list.Count; i++)
    {
        engg_list[i].Check = false;
    }
}

private void chck_all_prd()
{
    for (int i = 0; i < engg_list.Count; i++)
    {
        engg_list[i].Check = true;
    }
}

public class EnggLst : ObservableCollection<EnggLst>
{
    public bool …
Run Code Online (Sandbox Code Playgroud)

wpf checkbox datagrid observablecollection wpfdatagrid

9
推荐指数
1
解决办法
2万
查看次数