C# WPF как поменять стиль у MenuItem
Подскажите, пожалуйста, как поменять стиль у MenuItem так, чтобы его flyout (или что-то другое) был черным
На данный момент выглядит вот так

Ответы (1 шт):
Автор решения: Nick
→ Ссылка
Вам нужно настроить шаблон родительского MenuItem, а если конкретней, то настроить его Popup
Xaml стиля:
<Style x:Key="ParentMenuItem" TargetType="MenuItem" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type MenuItem}">
<Border x:Name="Border">
<Grid>
<ContentPresenter Margin="6,3,6,3" ContentSource="Header" RecognizesAccessKey="True" />
<Popup x:Name="Popup" Placement="Bottom" IsOpen="{TemplateBinding IsSubmenuOpen}" AllowsTransparency="True" Focusable="False" PopupAnimation="Fade">
<Border x:Name="SubmenuBorder" SnapsToDevicePixels="True" BorderThickness="2" Background="#3c3c3c">
<Border.BorderBrush>
<SolidColorBrush Color="#868686" />
</Border.BorderBrush>
<StackPanel IsItemsHost="True" KeyboardNavigation.DirectionalNavigation="Cycle" />
</Border>
</Popup>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
Xaml Menu:
<Menu VerticalAlignment="Top" Height="25" BorderBrush="Blue">
<MenuItem Header="1" Style="{StaticResource ParentMenuItem}">
<MenuItem Foreground="White" Background="#1f1f1f" Header="1" ></MenuItem>
<MenuItem Foreground="White" Background="#1f1f1f" Header="2"></MenuItem>
</MenuItem>
<MenuItem Header="2" Style="{StaticResource ParentMenuItem}">
<MenuItem Foreground="White" Background="#1f1f1f" Header="1" ></MenuItem>
<MenuItem Foreground="White" Background="#1f1f1f" Header="2" ></MenuItem>
</MenuItem>
<MenuItem Header="3" Style="{StaticResource ParentMenuItem}">
<MenuItem Foreground="White" Background="#1f1f1f" Header="1" ></MenuItem>
<MenuItem Foreground="White" Background="#1f1f1f" Header="2" ></MenuItem>
</MenuItem>
</Menu>
Визуализация:

