获取拖动后的WPF滑动条值

本文关键字:WPF 拖动 获取 | 更新日期: 2023-09-27 18:08:57

我试图在用户完成拖动拇指或单击移动到特定点后获得WPF滑块值。

我想通过侦听某种事件来保存db中的新值。我该怎么做呢?

我尝试了这个问题的解决方案,但我一无所获WPF:带有在用户拖动 后触发的事件的滑块

每次进入事件很多次

谢谢。xaml:

<Slider Value="{Binding VoipVolume}" MouseLeftButtonUp="slider_MouseLeftButtonUp"/>
后台代码:

public double VoipVolume
    {
        get { return (double)GetValue(VoipVolumeProperty); }
        set
        {
            SetValue(VoipVolumeProperty, value);
            VolumeChanged(value);
        }
    }
private void VolumeChanged(object value)
    {
        StationViewModel viewModel = this.DataContext as StationViewModel;
        if (viewModel != null)
        {
            if (end)
            {
                viewModel.OnVolumeChange((float)VoipVolume);
                end = false;
            }
        }
    }
    bool end = false;

    private void slider_MouseLeftButtonUp(object sender, System.Windows.Input.MouseButtonEventArgs e)
    {
        end = true;
    }

获取拖动后的WPF滑动条值

可能重复。希望这能帮助你:stackoverflow.com/a/723547/1611490

 <Slider Thumb.DragCompleted="MySlider_DragCompleted" />

和在MySlider_DragCompleted事件下,更新虚拟机的属性或获取值

如果您使用的是FW 4.5或以上版本,请尝试使用"延迟"属性。

http://www.jonathanantoine.com/2011/09/21/wpf-4-5-part-4-the-new-bindings-delay-property/

我们没有选择,最后我们使用TickFrequency,因为我们需要将滑动条中的更改保存到db,并且我们不希望它发生在每0.001.

谢谢. .