WPF Seleccione todas las casillas de verificación en un DataGrid

Estoy tratando de seleccionar todos los CheckBox en un DataGrid pero no obtuve ningún resultado usando este código a continuación

Esta es la función a la que estoy llamando cuando se hace clic en el CheckBox principal

private void CheckUnCheckAll(object sender, RoutedEventArgs e)
{
    CheckBox chkSelectAll = ((CheckBox)sender);
    if (chkSelectAll.IsChecked == true)
    {
        dgUsers.Items.OfType<CheckBox>().ToList().ForEach(x => x.IsChecked = true);
    }
    else
    {
        dgUsers.Items.OfType<CheckBox>().ToList().ForEach(x => x.IsChecked = false);
    }
}

dgUsers es DataGrid pero, como me doy cuenta, se encuentra cualquier casilla de verificación.

Este es el XAML que estoy usando para crear el CheckBox en la cuadrícula de datos

<DataGrid.Columns>
    <DataGridCheckBoxColumn x:Name="col0" HeaderStyle="{StaticResource ColumnHeaderGripperStyle}">
         <DataGridCheckBoxColumn.HeaderTemplate>
              <DataTemplate>
                   <CheckBox Click="CheckUnCheckAll" >
                   </CheckBox>
              </DataTemplate>
         </DataGridCheckBoxColumn.HeaderTemplate>
    </DataGridCheckBoxColumn>
<DataGrid.Columns>

Y esta es la imagen de mi DataGrid

¿Hay alguna forma de seleccionar todas las casillas de verificación programáticamente?

Editar&nbsp;Ya intenté seguirestos pasos

que puedes ver que mi código es el mismo allí pero no me funcionó