Я пытаюсь создать динамическое меню с использованием привязки. Я мой viewmodel У меня есть список объектов, который содержит заголовок и команду. Однако он не работает. Я думаю, проблема в шаблоне данных. Смотрите мой код ниже:
<Menu Background="{x:Null}" Grid.Row="0" Grid.Column="1" Panel.ZIndex="2" Width="865" Height="85" HorizontalAlignment="Left" ItemsSource="{Binding Path=MenuItems}">
<Menu.ItemTemplate>
<HierarchicalDataTemplate DataType="MenuItemViewModel" ItemsSource="{Binding Path=MenuItems}">
<MenuItem Header="{Binding Header}" Style="{DynamicResource MenuItemStyle1}" ItemsSource="{Binding Path=MenuItems}" Padding="10,12,10,0" Height="44.1" Margin="30,0,0,0" FontWeight="Bold">
<MenuItem.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</MenuItem.ItemsPanel>
</MenuItem>
<HierarchicalDataTemplate.ItemTemplate>
<DataTemplate>
<MenuItem Header="{Binding Header}" Style="{DynamicResource MenuItemStyle1}" Padding="0,8,0,0" Height="38">
</MenuItem>
</DataTemplate>
</HierarchicalDataTemplate.ItemTemplate>
</HierarchicalDataTemplate>
</Menu.ItemTemplate>
</Menu>
В результате отображается только первое меню. Подменю не отображается, но они есть с тех пор, как у них есть дети, стрелка печатается после заголовка меню.
Может ли кто-нибудь найти что-то неправильно в привязке? Или любое предложение?
Просто для информации, MenuItems - это список объектов MenuItemViewModel, который имеет заголовок и список объектов MenuItemViewModel (подменю), также называемых MenuItems.