У меня есть переменные, подобные этой
<Grid Grid.Column="1" x:Name="AdvArea" Margin="10,0,0,0">
<Canvas x:Name="Advertise" Background="{x:Null}" Margin="10,0,0,0" >
<TextBlock Name="AdvMarquee" Text="Scroll Text For Advertise" Padding="10, 0, 10, 0"/>
</Canvas>
</Grid>
Я наконец применил Marquee с DoubleAnimation для TextBlock с этим кодом.
private void UserControl_Loaded( object sender, RoutedEventArgs e )
{
DoubleAnimation doubleAnimation = new DoubleAnimation();
doubleAnimation.From = -AdvMarquee.ActualHeight;
doubleAnimation.To = 0;
doubleAnimation.RepeatBehavior = RepeatBehavior.Forever;
doubleAnimation.Duration = new Duration( TimeSpan.FromSeconds(5) );
AdvMarquee.BeginAnimation( Canvas.TopProperty, doubleAnimation );
// Dev Area
List<String> Messages = new List<String>();
Messages.Add( String.Format( "AdvMarquee : HasAnimatedProperties > " + AdvMarquee.HasAnimatedProperties ) );
Messages.Add( String.Format( "doubleAnimation.From : " + doubleAnimation.From ) );
Messages.Add( String.Format( "doubleAnimation.To : " + doubleAnimation.To ) );
Messages.Add( String.Format( "doubleAnimation.RepeatBehavior : " + doubleAnimation.RepeatBehavior ) );
Messages.Add( String.Format( "doubleAnimation.Duration : " + doubleAnimation.Duration ) );
MessageBox.Show( String.Join("\n", Messages ) );
}
Я планировал сделать прокрутку текста вне диапазонана экран
и остановите момент для показа
, после этого прокрутите экран на экран.
, но я не знаю, как применить другую анимацию после завершения существующей анимации.
Мой сценарий
Прокрутка моего текста снаружи экрана до экрана
сохранитьэтот текст на мгновение (например, 10 секунд)
снова прокрутите вниз от экрана к экрану.
ЧтоМне нужно знать
Применить DoubleAnimation к TextBlock (Готово)
Применить еще одну DoubleAnimation после завершения первой DoubleAnimation.
С любым наконечником все в порядке, дайте мне руки.
спасибо.