我有一個按鈕和一個滑塊,當我按下按鈕時,我想讓滑塊勾選一個步驟,直到達到其最大值。但是,我沒有得到它的工作。一旦我點擊該按鈕,它會休眠一段時間,然後以最大值顯示滑塊,而不顯示每個刻度。WPF中的滑塊「動畫」?
這裏是我的XAML代碼:
<StackPanel Orientation="Horizontal">
<Button x:Name="AnimationGoButton" Content="Go" />
<Slider x:Name="AnimationSlider" TickFrequency="1" TickPlacement="BottomRight" IsSnapToTickEnabled="True" Width="200" Maximum="20" Value="0" />
</StackPanel>
這裏是我的代碼背後:
Private Sub AnimationGoButton_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles AnimationGoButton.Click
While (Me.AnimationSlider.Value < Me.AnimationSlider.Maximum)
Me.AnimationSlider.Value += 1
System.Threading.Thread.Sleep(100)
End While
End Sub
我曾嘗試使用一個動態資源,但結果是一樣的。
XAML:
<Window.Resources>
<sys:Double x:Key="AnimationSliderValue">0</sys:Double>
</Window.Resources>
然後,我改變了價值滑塊XAML到:
Value="{DynamicResource AnimationSliderValue}"
,並切換到後面的代碼:
While (Me.AnimationSlider.Value < Me.AnimationSlider.Maximum)
Resources("AnimationSliderValue") += 1
System.Threading.Thread.Sleep(100)
End While
但正如我說,結果是一樣的。當我按下按鈕時,UI不會更新,直到達到最大值。
所以我的問題是,我該如何創建這個「動畫」我想要的滑塊?請指點我正確的方向看。 :) 謝謝!
謝謝你,這對我幫助很大。 – Ragowit 2012-01-16 10:35:28
是否有可能讓此故事板使用「TickFrequency =」1「」 - 設置?現在它動畫也很流暢,看起來不錯,但是我需要檢查它是什麼時候點擊「1」,「2」而不是「0.1116」等等。 – Ragowit 2012-01-16 10:45:10
查看上面的更新... – 2012-01-17 10:26:52