Проблема заключается в том что скрытие формы выполняется сразу, а не после анимации. Как добиться того что бы после окончания анимации выполнялось скрытие формы
DoubleAnimation HideBlindWindow = new DoubleAnimation(SystemParameters.PrimaryScreenWidth - Blind.Width, SystemParameters.PrimaryScreenWidth, TimeSpan.FromMilliseconds(150), FillBehavior.HoldEnd);
DoubleAnimation HideTimeWindow = new DoubleAnimation(0.9, 0, TimeSpan.FromMilliseconds(140), FillBehavior.HoldEnd);
blind.BeginAnimation(Window.LeftProperty, HideBlindWindow);
timeWindow.BeginAnimation(Window.OpacityProperty, HideTimeWindow);
// как сделать чтобы эти действия выполнялись после окончания анимации
blind.Hide();
timeWindow.Hide();
Ответ
Используйте Completed event для анимации. Подробнее на MSDN. В вашем случае:
anim.Completed += new EventHandler(anim_Completed);
private void anim_Completed(object sender, EventArgs e)
{
//здесь ваш код после завершения анимации
}
Комментариев нет:
Отправить комментарий