WPF - Как я могу создать меню и подменю, используя привязку

Я пытаюсь создать динамическое меню с помощью привязки. В моей модели просмотра у меня есть список объектов, который содержит заголовок и команду. Тем не менее, это не работает. Я думаю, что проблема в шаблоне данных. Смотрите мой код ниже:

<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.

Ответы на вопрос(2)

Ваш ответ на вопрос