2010-12-23 151 views
0

我遇到了一些問題。我創建了一個DataTemplate並將它放到App.xaml中,我想用它來在我有十幾個ListView中設置我的CheckBox。特定的ListView每個都至少有一個帶有bool值的列。WPF - 如何綁定DataTemplate中的項目?

這裏是我做了的DataTemplate:

<DataTemplate x:Key="checkBoxDataTemplate"> 
    <Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*" /> 
     </Grid.RowDefinitions> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*" /> 
     </Grid.ColumnDefinitions> 

     <CheckBox Grid.Column="0" Grid.Row="0" Style="{StaticResource DataGridCheckBox}" IsChecked="{WhatDoIPutHere?}" /> 
    </Grid> 
</DataTemplate> 

而且我想用它來代替這個:

<GridViewColumn Header="Discovery Date"> 
    <GridViewColumn.CellTemplate> 
     <DataTemplate> 
      <CheckBox Grid.Column="0" Grid.Row="0" Style="{StaticResource DataGridCheckBox}" IsChecked="{Binding CaseProperty.DiscoveryDate, Mode=OneWay, Converter={StaticResource booleanConverter},ConverterParameter='datetime'}" /> 
     </DataTemplate> 
    </GridViewColumn.CellTemplate> 
</GridViewColumn> 

正如你所看到的,我已經器isChecked綁定到特定屬性一個附加到我的ListView的對象。如果我用我的模板替換它,如何綁定到DataTemplate中的CheckBox的IsChecked屬性?

由於提前,
桑尼

+2

我看不出爲什麼你的綁定應該改變,因爲模板的實例綁定到相同的東西。 – 2010-12-23 01:35:21

回答

-1

我已經放棄了這種方法。我不認爲DataTemplates被設計爲以這種方式工作...哦,以及...

0

你可以試試這個方法:

<CheckBox Grid.Column="0" Grid.Row="0" Style="{StaticResource DataGridCheckBox}" 
      IsChecked="{Binding}" /> 

,然後設置相應的DataContext