Expression Blend de Pen(P) yardımı ile beş adet nokta oluşturalım:
Onceki anlatımlarda belirtildiği gibi bir storyboard oluşturalım ve line chartın bazı noktalarını belli saniyelerde değiştirerek kaydedelim.Bir buton oluşturup ControlStoryBoardActionu buton üzerine sürükleyip bırakarak buton ile bu animasyonun kontrolünü gerçekleştirelim. (tabiî ki ControlStoryBoard Actiounun properties kısmında staoryboard1 seçerek)
Blend de F11 tuşuna basarak xaml de noktaları hareket ettirecek olan propertylerin adını P1 ,P2,… olarak değiştirelim.EasyPointKeyFramelerin ilk değerlerini silelim(başlangıçten değilde kaldığı yerden başlamaları için)
<EasingPointKeyFrame x:Name="" KeyTime="0" Value=…. Silincek kısım.
Visual Studio tarafında ise aşagıdaki kodlamaları yapalım:
namespace SilverlightApplication7
{
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
btn.Click+=new RoutedEventHandler(btn_Click);
//animasyonun butona bir defabasıldıktan sonra sürekli olması için
Storyboard1.Completed+=new EventHandler(Storyboard1_Completed);
}
void Storyboard1_Completed(object sender, EventArgs e)
{
btn_Click(null, null);
}
private void btn_Click(object sender, RoutedEventArgs e)
{
Random RND = new Random();
P1.Value = new Point(P1.Value.X, RND.Next(0, 238));
P2.Value = new Point(P2.Value.X, RND.Next(0, 238));
P3.Value = new Point(P3.Value.X, RND.Next(0, 238));
P4.Value = new Point(P4.Value.X, RND.Next(0, 238));
P5.Value = new Point(P5.Value.X, RND.Next(0, 238));
Storyboard1.Begin();
}
}
}
Görüldüğü gibi LineChartın 5 noktasına random değerler atanarak X değerleri değiştirilip animasyon oluşturulmakta.
Hiç yorum yok:
Yorum Gönder