В настоящее время у меня есть UserControl, который использует модель MVVM.
В этом элементе управления есть TreeView, который отображает некоторые элементы. Я добавил HierarchicalDataTemplate для этого TreeView, и в этом шаблоне есть ContextMenu для элементов.
В ViewModel, который является DataContext элемента управления (с именем RestoresTreeViewControl), есть команда, к которой я хочу привязать один из пунктов меню. Однако то, что я сделал, похоже, не работает. Я получаю как обычно не могу найти источник для ссылки.
Вот фрагмент кода для таблицы данных, которая пыталась привязать команду EditDatabaseCommand к одному из пунктов меню.
<HierarchicalDataTemplate DataType="{x:Type model:Database}" >
<StackPanel>
<TextBlock Text="{Binding Name}" >
<TextBlock.ContextMenu>
<ContextMenu>
<MenuItem Header="Edit" Command="{Binding ElementName=RestoresTreeViewControl, Path=DataContext.EditDatabaseCommand}" />
<MenuItem Header="Delete"/>
<Separator/>
<MenuItem Header="Test Connection"/>
</ContextMenu>
</TextBlock.ContextMenu>
</TextBlock>
</StackPanel>
</HierarchicalDataTemplate>
Вот раздел ViewModel, где находится команда.
public ICommand EditDatabaseCommand { get; private set; }