我最近花了太长时间试图弄清楚如何在菜单上使用ItemContainerTemplate和UsesItemContainerTemplate属性.
基本上我的问题是,无论我做了什么,似乎,它都没有拿起模板.
<Menu Grid.Row="1" ItemsSource="{Binding MenuItems}" UsesItemContainerTemplate="True">
<Menu.Resources>
<ItemContainerTemplate DataType="{x:Type vm:SeparatorViewModel}">
<Separator />
</ItemContainerTemplate>
<ItemContainerTemplate DataType="{x:Type vm:ActionItemViewModel}">
<MenuItem Header="{Binding Path=Caption}" ItemsSource="{Binding SubItems}" />
</ItemContainerTemplate>
</Menu.Resources>
</Menu>
Run Code Online (Sandbox Code Playgroud)
它只会使用MenuItem作为容器.
但为什么?