私はデータ項目を持っています:
<SampleData:Item Title="Evening News" Channel="ABC" x:Key="sampleData0" />
私の xaml ページには、このアイテムを表示する ContentPresenter があります。
<ContentPresenter ContentTemplate="{StaticResource dt1}" />
データ テンプレートdt1は次のとおりです。
<DataTemplate x:Key="t2">
<Grid Background="#FF5599DD" DataContext="{StaticResource sampleData0}" >
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding Title}" />
<TextBlock Text="{Binding Channel}" Grid.Row="1" />
</Grid>
</DataTemplate>
これはすべてうまくいきます。しかし、データ テンプレートを自分の Dictionary.xaml ファイルに入れたいので、データ コンテキストを DataTemplate から ContentPresenter に移動する必要があります。
今、私の ContentPresenter は次のようになります。
<ContentPresenter ContentTemplate="{StaticResource dt1}" DataContext="{StaticResource sampleData0}" />
データ テンプレートは次のようになります。
<DataTemplate x:Key="t2">
<Grid Background="#FF5599DD">
<Grid.RowDefinitions>
<RowDefinition/>
<RowDefinition/>
</Grid.RowDefinitions>
<TextBlock Text="{Binding Title}" />
<TextBlock Text="{Binding Channel}" Grid.Row="1" />
</Grid>
</DataTemplate>
しかし、これはうまくいきません!
RelativeSource を試してみましたが、うまくいきませんでした。
誰でもアイデアはありますか?