/ / Jak używać wyzwalacza interakcji na przycisku ze zdarzeniami MouseUp i MouseDown w XAML? - wpf, xaml

Jak korzystać z przycisku wyzwalania interakcji na przycisku z wydarzeniami MouseUp i MouseDown w XAML? - wpf, xaml

Mam przycisk, który musi wykonać dwaoddzielne polecenia (jedno, aby coś uruchomić, a drugie, aby to zatrzymać). Po przeprowadzeniu pewnych badań System.Windows.Interactivity.dll wydaje się zapewniać łatwy sposób na osiągnięcie tego. Ale to nie działa lewym przyciskiem myszy (działa, jeśli użyję zdarzenia takiego jak MouseDoubleClick lub MouseRightButtonDown, ale nie MouseDown, MouseUp, lub MouseRightButtonDown) ... wydaje się, że przycisk zużywa samo zdarzenie, a interakcja. spust nigdy go nie widzi. Poniżej przedstawiłem fragment mojej XAML. Co mogę zrobić, aby obejść to zachowanie?

<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>

Odpowiedzi:

4 dla odpowiedzi № 1

Możesz użyć PreviewMouseDown i PreviewMouseUp zamiast


0 dla odpowiedzi nr 2

mouseleftbuttondown, mouseleftbuttonup