Powiązanie poleceń w hierarchicznej tablicy danych
Mam Menu w mojej aplikacji. Wizualizuję go za pomocą hierarchicznego szablonu danych:
<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>
menu wygląda tak, jak powinno, ale polecenie dla każdego elementu menu nie jest uruchamiane! Co więcej - nie jest ograniczony, co można zobaczyć w debuggerze: get Accessor właściwości ICommand nigdy nie został wykonany. Dlaczego tak się dzieje?
Jak zwykle działa idealnie:
<Menu>
<MenuItem Header="SomeHeader" Command="{Binding RunOperationCommand}"/>
<Menu>