我正在尝试创建一个媒体播放器,我无法弄清楚如何检测用户移动媒体位置的滑块。我已经尝试了MS为滑块提供的各种事件,但它们似乎都没有触发。我已经看到WP早期版本的指南显示Thumb.Drag事件,但我没有看到WP 8.1上的那些。如何检测滑块移动?
由于
答案 0 :(得分:0)
对我来说有用的是使用PointerPressed来确定用户是否正在与滑块交互,然后我使用PointerReleased,PointerExited和PointerCaptureLost用于相反的情况。
如果您的DispatchTimer每次都会更改滑块值相同的数量,那么您可以使用ValueChanged事件来确定更改的值是否与DispatchTimer应用的值不同。这是您可以处理用户输入逻辑的地方(暂停计时器,直到我上面提到的一个事件发生)。
答案 1 :(得分:0)
我遇到了同样的问题。范围栏将替换progressBar,以便用户可以与其进行交互并将媒体跳转到特定时间。我可以捕获用户交互但不会通过编程方式更改的事件是GotFocus
,如下所示:
的Xaml:
<Slider x:Name="sldTest" HorizontalAlignment="Left" Margin="-3,40,0,0" VerticalAlignment="Top" Width="379" GotFocus="Slider_GotFocus"/>
C#:
private void Slider_GotFocus(object sender, RoutedEventArgs e)
{
// the new value will be at the very same object, so you can just
// get the value of itself.
var newValue = sldTest.Value;
}