Quiero vincular una lista de KeyValuePair a una lista de MenuItems. Pensé que debería usar MenuIten.HeaderTemplate, pero no funcionó. Solo tengo encabezados en blanco.WPF MenuItem Encabezado y HeaderTemplate
<MenuItem
Header="Template"
ItemsSource="{Binding Path=Samples}">
<MenuItem.ItemTemplate>
<DataTemplate>
<MenuItem>
<MenuItem.HeaderTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Key}" FontWeight="Bold"/>
<TextBlock Text="{Binding Path=Value}" FontStyle="Italic" Margin="5,0,0,0"/>
</StackPanel>
</DataTemplate>
</MenuItem.HeaderTemplate> </MenuItem>
</DataTemplate>
</MenuItem.ItemTemplate>
</MenuItem>
Luego reemplacé MenuItem.HeaderTemplate con MenuItem.Header, funcionó.
<MenuItem
Header="Template"
ItemsSource="{Binding Path=Samples}">
<MenuItem.ItemTemplate>
<DataTemplate>
<MenuItem>
<MenuItem.Header>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding Path=Key}" FontWeight="Bold"/>
<TextBlock Text="{Binding Path=Value}" FontStyle="Italic" Margin="2,0,0,0"/>
</StackPanel>
</MenuItem.Header>
</MenuItem>
</DataTemplate>
</MenuItem.ItemTemplate>
</MenuItem>
¿Alguien me puede explicar por qué HeaderTemplate no funciona aquí?
Gracias. ¿Cómo accedo a los datos en HeaderTemplate en XAML? ¿MenuItem.Template no hereda el DataContext de su principal, el Menú? –
Aparentemente publico esta pregunta cuando no sabía demasiado sobre WPF. Gracias Micah y lo siento por la aceptación tardía. –