1
我試圖將ScaleTransform從0移動到1以便顯示控件。ScaleTransform動畫後永遠不會出現控制
下面的代碼似乎對我來說是完美的。我在StackOverflow上覆制了其他問題的方法。是的,動畫運行(至少Completed被提出),但是,視覺永遠不會發生。由於這是從0到1,控制從不出現。我試圖手動將其設置爲1(沒有動畫),並沒有問題,工作。
請假設開始== ==從0 & &時間== 3000 & & & &到== 1:
// setup
var _Storyboard = new Storyboard
{
BeginTime = TimeSpan.FromMilliseconds(begin),
Duration = new Duration(TimeSpan.FromMilliseconds(duration)),
};
_Storyboard.Completed += (s, e) => { if (callback != null) callback.Invoke(); };
// force Scale Transform
var _ScaleTransform = new ScaleTransform() { ScaleX = from, ScaleY = from };
food.RenderTransform = _ScaleTransform;
// animate X
var _AnimateX = new DoubleAnimation { From = from, To = to };
_Storyboard.Children.Add(_AnimateX);
Storyboard.SetTarget(_AnimateX, _ScaleTransform);
Storyboard.SetTargetProperty(_AnimateX, new PropertyPath(ScaleTransform.ScaleXProperty));
// animate Y
var _AnimateY = new DoubleAnimation { From = from, To = to };
_Storyboard.Children.Add(_AnimateY);
Storyboard.SetTarget(_AnimateY, _ScaleTransform);
Storyboard.SetTargetProperty(_AnimateY, new PropertyPath(ScaleTransform.ScaleYProperty));
// start
_Storyboard.Begin();
有什麼明顯?