@Rogue333

Останавливается анимация в XAML, в чем может быть дело?

Добрый день.
Есть TabControl с нескольками вкладками, и во вкладках есть анимации.
При переходе между вкладками анимация притормаживается, а затем вовсе останавливается.
В чем может быть дело?
Если не переходить между вкладками, то все замечательно.
<Image.Triggers>
                <EventTrigger RoutedEvent="Image.Loaded">
                    <EventTrigger.Actions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)"
                                                 RepeatBehavior="Forever" DecelerationRatio="0"
                                                 AutoReverse="False" FrameworkElement.FlowDirection="RightToLeft">
                                    <EasingDoubleKeyFrame KeyTime="0:0:2.10" Value="0"></EasingDoubleKeyFrame>
                                </DoubleAnimationUsingKeyFrames>
                            </Storyboard>
                        </BeginStoryboard>
                    </EventTrigger.Actions>
                </EventTrigger>
            </Image.Triggers>
            <Image.RenderTransform>
                <TransformGroup>
                    <ScaleTransform/>
                    <SkewTransform/>
                    <RotateTransform Angle="{Binding Speed, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
                    <TranslateTransform/>
                </TransformGroup>
            </Image.RenderTransform>
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
@Rogue333 Автор вопроса
<UserControl.Resources>

        <Storyboard x:Key="keyfanStoryboard">
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)"
                                                 RepeatBehavior="Forever" DecelerationRatio="0"
                                                 AutoReverse="False">
                <EasingDoubleKeyFrame KeyTime="0:0:3.10" Value="360"></EasingDoubleKeyFrame>
            </DoubleAnimationUsingKeyFrames>
        </Storyboard>
        
    </UserControl.Resources>

private Storyboard board = null;
---
        InitializeComponent();
        board = (Storyboard)this.FindResource("keyfanStoryboard");
        board.Begin(Animation);
---
        board.Resume();
---
        board.Pause();
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@SZolotov
Asp.net core, MAUI,WPF,Qt, Avalonia
UI поток может загружен?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы