I want to use triggerto automatically hide MenuItemwhich is disabled. If I use my style inside a certain MenuItemone like this, it works -
<MenuItem
Command="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type ContextMenu}},
Path=PlacementTarget.DataContext.ExportCommand}"
Header="Export...">
<MenuItem.Style>
<Style TargetType="{x:Type MenuItem}">
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>
</Style.Triggers>
</Style>
</MenuItem.Style>
</MenuItem>
but if I put the same one stylein ResourceDictionarylike this, then it won’t work -
<Style x:Key="{x:Type MenuItem}" TargetType="{x:Type MenuItem}" >
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>
</Style.Triggers>
</Style>
I want to have this behavior for all of my menu items, and I do not want to put this style on everyone MenuIteminside mine ContextMenu. Any idea why it doesn't work?
source
share