2016-12-05 11 views
0

Не понимаю, почему запущены мои анимации Canvas.Left и Canvas.Top, но мои анимации Width и Height не являются.Правильный путь свойства для анимации ширины в приложениях Windows Store (Windows 8.1 и выше)

Вот один пример совершенно рабочий код:

   DoubleAnimation doubleAnimationCanvasLeft = new DoubleAnimation(); 
       doubleAnimationCanvasLeft.From = Canvas.GetLeft(aDiceToBeChecked.myGrid); 
       doubleAnimationCanvasLeft.To = Canvas.GetLeft(aDiceToBeChecked.myGrid) - 102; 
       doubleAnimationCanvasLeft.Duration = TimeSpan.FromMilliseconds(myTimespan); 
       doubleAnimationCanvasLeft.FillBehavior = FillBehavior.HoldEnd; 

       Storyboard storyboardCanvasLeft = new Storyboard(); 
       storyboardCanvasLeft.Children.Add(doubleAnimationCanvasLeft); 

       Storyboard.SetTarget(storyboardCanvasLeft, aDiceToBeChecked.myGrid); 
       Storyboard.SetTargetProperty(storyboardCanvasLeft, "(Canvas.Left)"); 
       storyboardCanvasLeft.Begin(); 

И то же самое для ширины не работает:

   DoubleAnimation doubleAnimationGridWidth = new DoubleAnimation(); 
       doubleAnimationGridWidth.From = 200.0; 
       doubleAnimationGridWidth.To = 304.0; 
       doubleAnimationGridWidth.Duration = TimeSpan.FromMilliseconds(myTimespan); 
       doubleAnimationGridWidth.FillBehavior = FillBehavior.HoldEnd; 

       Storyboard storyboardGridWidth = new Storyboard(); 
       storyboardGridWidth.Children.Add(doubleAnimationGridWidth); 

       Storyboard.SetTarget(storyboardGridWidth, aDiceToBeChecked.myGrid); 
       Storyboard.SetTargetProperty(storyboardGridWidth, "(Width)"); 
       storyboardGridWidth.Begin(); 

Он не работает с Ширина (Width), (UIElement. Width), (Grid.Width), и я действительно не уверен, как получить правильный Путь свойств, если путь свойства является даже проблемой !? Не могли бы вы помочь мне?

Я использую Net версии 4.5.1 и Visual Studio Express 2013 и разработки для Windows, 8.1 и Windows, 10.

ответ

1

Я нашел недостающую часть:

   doubleAnimationGridWidth.EnableDependentAnimation = true; 

Если кто-то читает это: Это означает, что эта анимация использует больше ресурсов для потока пользовательского интерфейса. На веб-сайте Microsoft есть дополнительная информация.

Тем не менее, если кто-то может сказать мне, как строить и отлаживать эти пути собственности ...