我有一个按钮,需要执行两个单独的命令(一个启动某事,一个停止它)。在做了一些研究之后,System.Windows.Interactivity.dll 似乎提供了一种简单的方法来实现这一点。但它不适用于鼠标左键(如果我使用诸如MouseDoubleClick或MouseRightButtonDown 之类的事件,但不是MouseDown、MouseUp或MouseRightButtonDown ,它确实有效)......似乎按钮消耗了事件本身和交互.trigger 永远不会看到它。我在下面提供了我的 XAML 片段,我可以做些什么来解决这种行为?
<Button Content="DoStuff">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDown">
<i:InvokeCommandAction Command="{Binding StartCommand}" />
</i:EventTrigger>
<i:EventTrigger EventName="MouseUp">
<i:InvokeCommandAction Command="{Binding StopCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</Button>