Команда для «Родительского» ContextMenu - PullRequest
1 голос
/ 02 августа 2011

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

MenuItem item = new MenuItem();
item.Command = DoSomething;
item.Header = "Parent";

MenuItem subItem = new MenuItem();
subItem.Command = DoSomethingElse;
subItem.Header = "Child";

item.Items.Add(subItem);
ContextMenuItems.Add(item);
<Button>
    <Button.ContextMenu>
        <ContextMenu ItemsSource="{Binding ContextMenuItems}" />
    </Button.ContextMenu>
</Button>

<CommandBinding Command="{x:Static DoSomething}"
                Executed="DoSomethingExecuted"/>

<CommandBinding Command="{x:Static DoSomethingElse}"
                Executed="DoSomethingElseExecuted"/>

1 Ответ

4 голосов
/ 02 августа 2011

Я хочу, чтобы элемент меню верхнего уровня действовал как команда при нажатии

Вы никогда не должны этого делать.вопрос руководств, последовательности и ожиданий пользователей )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...