<UserControl x:Class="CheckboxSelectAll.MainPage"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"
             xmlns:my="clr-namespace:CheckboxSelectAll"
             mc:Ignorable="d" d:DesignHeight="700" d:DesignWidth="700">
    <UserControl.Resources>
        <my:MyViewModel x:Key="MyViewModel"/>
    </UserControl.Resources>
    <Grid x:Name="LayoutRoot" 
          Background="White" 
          DataContext="{StaticResource MyViewModel}">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
       
        <telerik:RadGridView Grid.Row="0" 
                             Name="clubsGrid" 
                             ItemsSource="{Binding Clubs}"
                             AutoGenerateColumns="False"
                             Margin="5"
                             SelectionMode="Multiple"
                             SelectionChanged="clubsGrid_SelectionChanged"
                             >
            <telerik:RadGridView.Columns>
                <telerik:GridViewDataColumn DataMemberBinding="{Binding Name}"/>
                <telerik:GridViewDataColumn DataMemberBinding="{Binding Established}"
                                            Header="Est." 
                                            DataFormatString="{}{0:yyyy}"/>
                <telerik:GridViewDataColumn DataMemberBinding="{Binding StadiumCapacity}" 
                                            Header="Stadium" 
                                            DataFormatString="{}{0:N0}"/>

                <telerik:GridViewCheckBoxColumn DataMemberBinding="{Binding IsDisabled}" 
                                                Header="IsDisabled"
                                                AutoSelectOnEdit="True"
                                                EditTriggers="CellClick"/>

                <telerik:GridViewCheckBoxColumn DataMemberBinding="{Binding IsSelected}"
                                                AutoSelectOnEdit="True"
                                                EditTriggers="CellClick"
                                                IsReadOnly="True">
                    <telerik:GridViewCheckBoxColumn.Header>
                        <StackPanel Orientation="Horizontal">
                            <CheckBox 
                                  x:Name="chkBoxHeader"
                                  Checked="chkBox_Checked"
                                  Unchecked="chkBox_Unchecked"/>
                            <TextBlock Text="Select all except disabled"/>
                        </StackPanel>
                    </telerik:GridViewCheckBoxColumn.Header>
                </telerik:GridViewCheckBoxColumn>

            </telerik:RadGridView.Columns>
        </telerik:RadGridView>
    </Grid>
</UserControl>