seLeftButtonDown或MouseLeftButton

seLeftButtonDown或MouseLeftButton

本文介绍了WPF:滑块不会引发MouseLeftButtonDown或MouseLeftButtonUp的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试了此XAML:

<Slider Width="250" Height="25" Minimum="0" Maximum="1" MouseLeftButtonDown="slider_MouseLeftButtonDown" MouseLeftButtonUp="slider_MouseLeftButtonUp" />

还有这个C#:

private void slider_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
sliderMouseDown = true;
}

private void slider_MouseLeftButtonUp(object sender, MouseButtonEventArgs e)
{
sliderMouseDown = false;
}

sliderMouseDown变量从不更改,因为从不引发MouseLeftButtonDown和MouseLeftButtonUp事件.当用户在滑块上按下鼠标左键以将bool值设置为true并将鼠标设置为bool时,如何将bool设置为false?

The sliderMouseDown variable never changes because the MouseLeftButtonDown and MouseLeftButtonUp events are never raised. How can I get this code to work when a user has the left mouse button down on a slider to have a bool value set to true, and when the mouse is up, the bool is set to false?

推荐答案

滑块会吞下MouseDown事件(类似于按钮).

Sliders swallow the MouseDown Events (similar to the button).

您可以注册PreviewMouseDown和PreviewMouseUp事件,这些事件在滑块有机会处理它们之前被触发.

You can register for the PreviewMouseDown and PreviewMouseUp events which get fired before the slider has a chance to handle them.

这篇关于WPF:滑块不会引发MouseLeftButtonDown或MouseLeftButtonUp的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-12 07:04