我想使用trigger
來自動隱藏MenuItem
被禁用。如果我用我的風格特定MenuItem
裏面這樣它的工作原理 -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>
我想對我所有的菜單項都有這種行爲,我不想在我的ContextMenu
中的每個MenuItem
上放置這種樣式。任何想法爲什麼它不工作?
如果將Style放入ContextMenu.Resources中,它是否適用於MenuItems內部? – LPL 2012-04-20 16:47:50