磁效应在滑块
本文关键字:磁效应 | 更新日期: 2023-09-27 18:18:28
看,我在Silverlight中有滑块,从最小值0开始,最大值为1,
我想让滑块有一些磁效应,比如如果我把滑块的拇指放在0附近,它必须返回0。
以为例,如果我的拇指在(0 - 0.50)之间落下,比如0.40,那么拇指必须移动到0,如果拇指在超过0.50的位置落下,它必须移动到1。
<Slider Height="50" x:Name="slider" Width="160" Maximum="1" SmallChange="1" LargeChange="1" Minimum="0" />
ValueChanged
-Event呢?
构建如下代码:
slider.Value = slider.Value <= 0.5 ? 0 : 1;
public class SnappySlider : Slider
{
public SnappySlider()
{
this.DefaultStyleKey = typeof(Slider);
}
protected override void OnValueChanged(double oldValue, double newValue)
{
base.OnValueChanged(oldValue, newValue);
Value = Value < 0.5 ? 0 : 1;
}
}