小编use*_*449的帖子

为ContentPresenter中的所有元素设置样式

我重写了wpf扩展器的模板.标头包含ContentPresenter

<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>
Run Code Online (Sandbox Code Playgroud)

我试图在里面为所有TextBlocks添加我的样式.如果我将标题设置为属性,我的风格是有效的:

<Expander Header="HelloWorld">
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试以其他方式设置它时,它不会.

<Expander>
    <Expander.Header>
        <Grid x:Name="MyGrid">
            <TextBlock>Hello Man</TextBlock>
        </Grid>  
    </Expander.Header>
</Expander>
Run Code Online (Sandbox Code Playgroud)

如何为ContentPresenter中的任何TextBlocks设置此样式?

silverlight wpf wpf-controls

7
推荐指数
1
解决办法
9107
查看次数

标签 统计

silverlight ×1

wpf ×1

wpf-controls ×1