Finding a Storyboard in the VisualStateManager


Finding a Storyboard in the VisualStateManager  written by www.PageBrooks.com

Animasyonu bulmanızı sağlayan class;

VisualStateManagerUtils.vb
  1. public class VisualStateManagerUtils
  2. {
  3.     public static Storyboard FindStoryboard(FrameworkElement parent, string groupName, string stateName)
  4.     {
  5.         var vsgs = VisualStateManager.GetVisualStateGroups(parent);
  6.         foreach (VisualStateGroup vsg in vsgs)
  7.         {
  8.             if (vsg.Name != groupName)                 
  9.                 continue;
  10.             
  11.             foreach (VisualState vs in vsg.States)
  12.             {
  13.                 if (vs.Name == stateName)                    
  14.                     return vs.Storyboard;
  15.             }
  16.         }
  17.         
  18.         return null;
  19.     }
  20. }

 

Kullanımı;

  1. Storyboard sb = VisualStateManagerUtils.FindStoryboard(LayoutRoot, "Common", "Normal");

 

Extension Method olarak geliştirilmiş hali;

VisualStateManagerUtils.vb
  1. public static class VisualStateManagerUtils
  2.     {
  3.         public static Storyboard FindStoryboard(this FrameworkElement parent, string groupName, string stateName)
  4.         {
  5.             var vsgs = VisualStateManager.GetVisualStateGroups(parent);
  6.             foreach (VisualStateGroup vsg in vsgs)
  7.             {
  8.                 if (vsg.Name != groupName)
  9.                     continue;
  10.  
  11.                 foreach (VisualState vs in vsg.States)
  12.                 {
  13.                     if (vs.Name == stateName)
  14.                         return vs.Storyboard;
  15.                 }
  16.             }
  17.  
  18.             return null;
  19.         }
  20.     }

 

Kullanımı;

  1. Storyboard sb = LayoutRoot.FindStoryboard("Common", "Normal");

Reklamlar

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

w

Connecting to %s