A MouseGesture
участвует, но вам не нужно явно его создавать. Вы можете использовать MouseBinding
, который создаст для вас MouseGesture
под капотом.
Вам нужен UIElement, чтобы прикрепить вашу привязку к. Вот как это можно сделать с помощью отдельного декоратора.
<ControlTemplate ...>
<Decorator>
<Decorator.InputBindings>
<MouseBinding MouseAction="RightClick" Command="..." />
</Decorator.InputBindings>
... content here ...
</Decorator>
</ControlTemplate>
Скорее всего, ваш ControlTemplate использует панель, такую как DockPanel или Grid для разметки, и в этом случае вы можете прикрепить к ней привязку вместо добавления Decorator.