我在尝试更改WPF中默认ContextMenu的样式时遇到问题。 我不想覆盖de ContextMenu,我简单地想要覆盖ContextMenu STYLE。 在所有网站中,我说必须创建ContextMenu的每个MenuItem,但我想使用默认的MenuItems,并且只改变样式并在后台添加边框。 我该怎么办?
<Style TargetType="{x:Type ContextMenu}">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="OverridesDefaultStyle" Value="True" />
<Setter Property="Grid.IsSharedSizeScope" Value="true" />
<Setter Property="HasDropShadow" Value="True" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ContextMenu}">
<Border x:Name="Border" Background="#000" BorderThickness="1">
<ScrollViewer x:Name="ScrollViewer">
<ItemsPresenter />
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
答案 0 :(得分:2)
确保:
Application.Current.Resources.MergedDictionaries
)