我想使用 atrigger
自动隐藏MenuItem
禁用的 a 。如果我在这样的特定项目中使用我的风格,MenuItem
它会起作用 -
<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>
但是如果我把它放在style
这样的地方ResourceDictionary
,那就行不通了-
<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>
我想对我的所有菜单项都有这种行为,我不想把这种风格放在MenuItem
我的ContextMenu
. 知道为什么它不起作用吗?