wpf expanderのテンプレートをオーバーライドしました。 ヘッダは、私は内部のすべてのテキストブロックのための私のスタイルを追加しようとしたのContentPresenterContentPresenter内のすべての要素のスタイルを設定
<ContentPresenter x:Name="HeaderContent"
Grid.Column="1"
Margin="0,0,4,0"
HorizontalAlignment="Left"
VerticalAlignment="Center"
RecognizesAccessKey="True"
SnapsToDevicePixels="True"
>
<ContentPresenter.Resources>
<Style BasedOn="{StaticResource Expanderheader-Naming}"
TargetType="{x:Type TextBlock}" />
</ContentPresenter.Resources>
</ContentPresenter>
を持っています。
<Expander Header="HelloWorld">
しかし、私は他の方法でそれを設定しようとすると、それはしていません: 私のスタイルは、私はプロパティとしてヘッダを設定した場合は動作します。
<Expander>
<Expander.Header>
<Grid x:Name="MyGrid">
<TextBlock>Hello Man</TextBlock>
</Grid>
</Expander.Header>
</Expander>
ContentPresenter内のTextBlockにこのスタイルを設定するにはどうすればよいですか?
私は理解していないが、それはどういう意味かもしれ申し訳ありませんが、その私が使用している場合: <スタイルのTargetType = "{X:タイプグリッド} "> ' これは動作するはずですか? –
user1706449
はい、私たちは同じことについて話しているといいです:)はい、うまくいくはずです。 –
はい、すべきです!しかし、通常そうではありません。 ContentPresenter> –
user1706449