У меня есть меню WPF:
XAML:
<Style x:Key="{x:Type ContextMenu}" TargetType="{x:Type ContextMenu}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ContextMenu}">
<Border Background="#FF171616" CornerRadius="5" BorderBrush="DarkGray" BorderThickness="5" Opacity="0.0">
<StackPanel ClipToBounds="True" Orientation="Vertical" IsItemsHost="True" Margin="5,4,5,4"/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Использую ли я правильный x:Type ContextMenu
чтобы изменить раскрывающуюся визуализацию? Визуальный элемент меню изменяется, потому что я вручную изменил стиль. Но это контекст, на который я хочу применить визуальные эффекты.
Как я могу изменить сам контекст?
Вот краткий образец того, что мне нужно:
Чтобы изменить стиль для меню, вам необходимо переопределить стиль меню. Как показано ниже:
<Style TargetType="{x:Type Menu}">
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Foreground" Value="White" />
<Setter Property="Background" Value="#FF171616" />
</Style>
Изменение: вы также можете изменить весь шаблон, если хотите. Но я думаю, что эти свойства должны получить визуализацию, которую вы ищете.
BorderThickness
не распознается вMenu
типа