我想在WPF中做一個coloranimation,這樣一個新暴露的UI元素會隨着時間的推移呈現出隨着時間的推移而變白的紅色邊框。這裏是我的代碼:ColorAnimation幫助?
SolidColorBrush toFade = new SolidColorBrush(Colors.Red);
private void showElement(SuperTB.SuperTextB toShow)
{
toShow.Visibility = Visibility.Visible;
toShow.BorderBrush = toFade;
ColorAnimation fadeToWhite = new ColorAnimation();
fadeToWhite.To = Colors.White;
fadeToWhite.Duration = TimeSpan.FromSeconds(1);
Storyboard.SetTargetName(fadeToWhite, "toFade");
Storyboard.SetTargetProperty(fadeToWhite, new PropertyPath(SolidColorBrush.ColorProperty));
Storyboard fade = new Storyboard();
fade.Children.Add(fadeToWhite);
fade.Begin(this);
}
,在我的主窗口的構造函數我有
this.RegisterName("toFade", toFade);
當方法被調用時,所需的元素出現,但沒有色彩的動畫。我究竟做錯了什麼?
我很想知道,雖然Blend可能是最好的一堆它仍然生成代碼,我自己並不喜歡所有的東西,我更喜歡手寫代碼,因爲然後我知道一切都在哪裏以及它是如何構造的。此外,如果你這樣做了一段時間,C#或XAML中的動畫也變得非常自然。 –
@ H.B。爲教育目的生成代碼沒有任何問題。看看它是如何完成的,然後使用這些信息來加強。 :) –
確實。一旦你進入Blend的動畫,你可能會發現有些事情你只能在設計師中做。路徑動畫,緩動函數,偏移動畫等。我只能想象將工作放入動畫中的一個項目上,該項目本身正在移動。 – CodeWarrior