2

Inside my CreateBatchViewModel class-->View Model for CreateBatch.cs I am binding

Datagrid ItemsSource="{Binding VersionList,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}"

where VersionList is an Observable Collection Property in CreateBatchViewModel class such that all properties inside DataGrid:VersionId,DocumentId,etc bind to VersionGridViewVM class.

public ObservableCollection<VersionGridViewVM> VersionList
{
  get 
  {
return _versionList;
  }
  set 
  {
if (value != null)
    _versionList = value;
RaisePropertyChanged("VersionList");
  }
}

I want the combo box in template Header Column to Bind to CheckALL Property in CreateBatchViewModel. How to do that? CreateBatch.xaml(DATAGRID)

<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.Header>
<CheckBox IsChecked="{Binding     Path=CreateBatchViewModel.CheckAll,UpdateSourceTrigger=PropertyChanged,Mode=TwoWay}">
</CheckBox>
</DataGridTemplateColumn.Header>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsChecked,UpdateSourceTrigger=PropertyChanged}">            </CheckBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Header="Version ID" Binding="{Binding VersionId}"/>
<DataGridTextColumn Header="Document ID" Binding="{Binding DocumentId}"/>
<DataGridTextColumn Header="Version Format" Binding="{Binding VersionFormat}"/>
</DataGrid.Columns>
angad.stjudes
  • 186
  • 1
  • 6

1 Answers1

1

Try this one:

<DataGridTemplateColumn>
    <DataGridTemplateColumn.Header>
        <CheckBox IsChecked="{Binding DataContext.CheckAll, 
                              RelativeSource={RelativeSource FindAncestor, AncestorType=DataGrid}}" />
    </DataGridTemplateColumn.Header>
</DataGridTemplateColumn>
icebat
  • 4,696
  • 4
  • 22
  • 36