Como reutilizar filhos de itens por meio de um estilo em XAML?

Eu tenho um submenu do WPF que eu quero reutilizar em alguns lugares no meu XAML. É uma coleção de oito<MenuItem> elementos com algumas ligações complicadas que não quero copiar / colar. No entanto, o titular é diferente em cada caso: em um lugar, o pai é um<Menu>, em outro lugar, o pai é um<MenuItem> em um<ContextMenu>.

Eu tenho experimentado com<Setter Property="Items"> no meu<Style> mas acho que talvez esteja no caminho errado.

Para torná-lo concreto, estou tentando reduzir a duplicação de código de algo como isto:

<Menu>
    <MenuItem Header="Details"    IsCheckable="True" ... />
    <MenuItem Header="List"       IsCheckable="True" ... />
    <MenuItem Header="Thumbnails" IsCheckable="True" ... />
    ...
</Menu>
...
<ContextMenu>
    <MenuItem Header="View">
        <MenuItem Header="Details"    IsCheckable="True" ... />
        <MenuItem Header="List"       IsCheckable="True" ... />
        <MenuItem Header="Thumbnails" IsCheckable="True" ... />
        ...
    </MenuItem>
</ContextMenu>

questionAnswers(1)

yourAnswerToTheQuestion