TreeView ContextMenu Привязка MVVM

В настоящее время у меня есть 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; }
5
задан Robaticus 3 January 2011 в 14:39
поделиться