Связывание команд в иерархической табличке данных

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

    <MenuItem Header="Main menu" ItemsSource="{Binding ApplicationMenu}" >
        <MenuItem.ItemTemplate>                    
            <HierarchicalDataTemplate DataType="{x:Type tm:RMenuItem}" 
                                      ItemsSource="{Binding Path=ChildrenItems}">                        
                <MenuItem Header="{Binding Name}" Command="{Binding RunOperationCommand}" />
            </HierarchicalDataTemplate>
        </MenuItem.ItemTemplate>
    </MenuItem>

меню выглядит так, как должно, но команда для каждого пункта меню не запускается! Более того - он не ограничен, что можно увидеть в отладчике: метод доступа get свойства ICommand никогда не выполнялся. Почему так происходит?

Выполнение как обычно работает идеально:

<Menu>
    <MenuItem Header="SomeHeader" Command="{Binding RunOperationCommand}"/>
<Menu>

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

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