WPF ContextMenu MenuItem style based on
<Window x:Class="WpfApp58.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WpfApp58" mc:Ignorable="d" Title="MainWindow" Height="450" Width="800"> <Window.Resources> <Style TargetType="{x:Type MenuItem}" x:Key="miStyle"> <Setter Property="FontSize" Value="20"/> <Setter Property="Foreground" Value="Blue"/> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="FontSize" Value="50"/> <Setter Property="Foreground" Value="Red"/> </Trigger> </Style.Triggers> </Style> <Style TargetType="{x:Type MenuItem}" x:Key="miStyle2"> <Setter Property="FontSize" Value="20"/> <Setter Property="Foreground" Value="Blue"/> <Style.Triggers> <Trigger Property="IsMouseOver" Value="True"> <Setter Property="FontSize" Value="50"/> <Setter Property="Foreground" Value="Green"/> </Trigger> </Style.Triggers> </Style> </Window.Resources> <Grid> <Grid.RowDefinitions> <RowDefinition Height="50"/> <RowDefinition/> <RowDefinition Height="50"/> </Grid.RowDefinitions> <DataGrid Grid.Row="1" ItemsSource="{Binding BooksCollection,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" BorderBrush="Blue" BorderThickness="3"> <DataGrid.ContextMenu> <ContextMenu> <ContextMenu.ItemContainerStyle> <Style TargetType="{x:Type MenuItem}" BasedOn="{StaticResource miStyle}"/> </ContextMenu.ItemContainerStyle> <MenuItem Header="Export Single" /> <MenuItem Header="Export Multiple" Style="{StaticResource miStyle2}"/> <MenuItem Header="Copy"/> </ContextMenu> </DataGrid.ContextMenu> </DataGrid> </Grid> </Window>