Styling nested elements in WPF

前端 未结 3 1336
太阳男子
太阳男子 2020-12-07 15:32

Suppose you have a nested element structure, for example a ContextMenu with MenuItems:


    

        
相关标签:
3条回答
  • 2020-12-07 16:07
    <ContextMenu>
       <ContextMenu.Resources>
          <Style TargetType="{x:Type MenuItem}">
             <!--Setters-->
          </Style>
       </ContextMenu.Resources>
       <MenuItem/>
       <!--Other MenuItems-->
    </ContextMenu>
    

    The style will be applied to all MenuItem objects within the ContextMenu.

    0 讨论(0)
  • 2020-12-07 16:11
    <ContextMenu ItemContainerStyle="{StaticResource FooMenuItemStyle}">
        <MenuItem/>
    </ContextMenu>
    
    0 讨论(0)
  • 2020-12-07 16:21

    Just to complete the original answer, I think it is clearer adding the nested style inside the parent like that:

    <Style x:Key="WindowHeader" TargetType="DockPanel" >
        <Setter Property="Background" Value="AntiqueWhite"></Setter>
        <Style.Resources>
            <Style TargetType="Image">
                <Setter Property="Margin" Value="6"></Setter>
                <Setter Property="Width" Value="36"></Setter>
                <Setter Property="Height" Value="36"></Setter>
            </Style>
            <Style TargetType="TextBlock">
                <Setter Property="TextWrapping" Value="Wrap"></Setter>
            </Style>
        </Style.Resources>
    </Style>
    
    0 讨论(0)
提交回复
热议问题