WPF Slider 鼠标拖拽处理(拖拽开始和结束事件)

Slider 控件虽然提供了N多鼠标事件,但是却大多数不会触发(MouseDown、MouseUp 等等),不相信的朋友可以试一试。解决方法:Thumb.DragStarted 事件和 Thumb.DragCompleted 事件:请看如下代码

/// 进度拖拽完成

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void sldProgress_DragCompleted(object sender, System.Windows.Controls.Primitives.DragCompletedEventArgs e)

{
    
    

    //重新设置进度并开始设置进度

    mediaElement.Position = TimeSpan.FromSeconds(sldProgress.Value);

    Timer.Start();

}

/// <summary>

/// 进度条拖拽

/// </summary>

/// <param name="sender"></param>

/// <param name="e"></param>

private void sldProgress_DragStarted(object sender, System.Windows.Controls.Primitives.DragStartedEventArgs e)

{
    
    

    //停止获取进度

    Timer.Stop();

}

使用方式 仅做参考 只写了一个 附:Thumb.DragCompleted 不会智能提示 事件列表中也不存在 但是可以使用。

 <Slider Grid.Row="1" Grid.Column="2" VerticalAlignment="Center" Thumb.DragCompleted="Slider_DragCompleted"/>

猜你喜欢

转载自blog.csdn.net/BeanGo/article/details/129086640