我正在尝试将嵌套的WPF样式应用于工具栏,希望所有工具栏子元素(比如菜单项、按钮、切换按钮等)都能使用指定的样式。
问题是,嵌套样式定义会正确地应用于一些控件(例如菜单项),但不适用于按钮。我做错了什么?
菜单项被正确地放置在工具栏底部,但是切换按钮位于中间位置:
问题是,嵌套样式定义会正确地应用于一些控件(例如菜单项),但不适用于按钮。我做错了什么?
菜单项被正确地放置在工具栏底部,但是切换按钮位于中间位置:
![This is what it looks like](https://istack.dev59.com/PPp49.webp)
<Window.Resources>
<Style x:Key="MyToolbarStyle" TargetType="ToolBar">
<!-- Setters for Toolbar properties -->
<Setter Property="Height" Value="80" />
<!-- Nested setters for children of the Toolbar -->
<Style.Resources>
<Style TargetType="MenuItem">
<Setter Property="VerticalAlignment" Value="Bottom" />
</Style>
<Style TargetType="ToggleButton">
<Setter Property="VerticalAlignment" Value="Bottom" />
</Style>
</Style.Resources>
</Style>
</Window.Resources>
<Grid >
<ToolBar VerticalAlignment="Top" Style="{StaticResource MyToolbarStyle}">
<MenuItem Header="MyMenuItem" /> <!-- Appears on the bottom like defined in the style-->
<ToggleButton Content="MyToggleButton" /> <!-- Nested style does not seem to be applied-->
</ToolBar>
</Grid>