I would like to use wpf menu items, defined in a resource, as menu and submenu. It works when used as a usual menu, but I can't make it work on a submenu.
Here is a sample code:
<Grid Background="Transparent">
<Grid.Resources>
<x:Array Type="{x:Type sys:Object}" x:Key="Extensions">
<Separator />
<MenuItem Header="Extension MenuItem 1" />
<MenuItem Header="Extension MenuItem 2" />
<MenuItem Header="Extension MenuItem 3" />
</x:Array>
</Grid.Resources>
<Grid.ContextMenu>
<ContextMenu>
<ContextMenu.ItemsSource>
<CompositeCollection>
<MenuItem Header="Standard MenuItem 1" />
<CollectionContainer Collection="{StaticResource Extensions}" />
<MenuItem Header="Extension" >
<CollectionContainer Collection="{StaticResource Extensions}" />
</MenuItem>
</CompositeCollection>
</ContextMenu.ItemsSource>
</ContextMenu>
</Grid.ContextMenu>
</Grid>
And the result I get:
Can someone give me the correct wpf syntax ?
Tia
You need to specify the ItemSource
and bind the resource correctly :
<MenuItem Header="Extension" >
<MenuItem.ItemsSource>
<CompositeCollection>
<CollectionContainer Collection="{Binding Source={StaticResource Extensions}}" />
</CompositeCollection>
</MenuItem.ItemsSource>
</MenuItem>