获取拖动后的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;
}
可能重复。希望这能帮助你: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.
谢谢. .