2011-12-20 58 views
1

看看我有滑塊在具有1最大值從0最小值開始的Silverlight,磁效應在滑塊

我想滑塊有一定的磁效應,就像如果我放棄滑塊接近0,則必須返回爲0。

例如,若設爲i滴之間的拇指(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" /> 

回答

2

ValueChanged怎麼樣 - 事件?

建立這樣的事情:

slider.Value = slider.Value <= 0.5 ? 0 : 1; 
+0

這個工作對我來說,@Faizan你可以發表你的更新XAML和CS代碼? – msmucker0527 2011-12-20 14:16:38

+0

@Karl它在「Mouse Left Button Up」事件上效果很好,在ValueChanged上的事件不像它那麼靈活,它只是訪問定義的值,即0和1之間的值。 – Faizan 2011-12-20 16:33:43

0
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; 
    } 
}