3

我有一个按钮,需要执行两个单独的命令(一个启动某事,一个停止它)。在做了一些研究之后,System.Windows.Interactivity.dll 似乎提供了一种简单的方法来实现这一点。但它不适用于鼠标左键(如果我使用诸如MouseDoubleClickMouseRightButtonDown 之类的事件,但不是MouseDownMouseUpMouseRightButtonDown ,它确实有效)......似乎按钮消耗了事件本身和交互.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>
4

2 回答 2

7

您可以使用PreviewMouseDownandPreviewMouseUp代替

于 2013-09-24T20:02:06.200 回答
0

mouseleftbuttondown , mouseleftbuttonup

于 2013-09-24T19:53:37.583 回答