У меня есть кнопка с командой по умолчанию и контекстное меню для других доступных команд:
<Button Content="Do this" Height="23" Width="75" Command="local:MyCommands.ThisCommand">
<Button.ContextMenu>
<ContextMenu>
<MenuItem Header="Do this" Command="local:MyCommands.ThisCommand" />
<MenuItem Header="Do that" Command="local:MyCommands.ThatCommand" />
</ContextMenu>
</Button.ContextMenu>
</Button>
По умолчанию появляется контекстное меню, начинающееся с горячей точки курсора:
Однако, я хотел бы, чтобы он появлялся в фиксированном относительном положении, под кнопкой (поддельный, отредактированный снимок экрана):
Настройка контекстного меню Placement
, PlacementRectangle
и PlacementTarget
свойств ничего не делает; контекстное меню настаивает на зависании курсора, где я нажимаю правой кнопкой мыши. Хуже того, фокусировка кнопки и нажатие клавиши меню заставляет контекстное меню сидеть перед кнопкой, полностью блокируя ее.
Итак, как именно я указываю, что контекстное меню должно появляться под кнопкой?