0

次のスタイルと、 に存在するという名前のストーリーボードがある場合、コードビハインドからトリガーされたストーリーボードを一時停止 (および再開) するにはどうすればよいですかanimation?<Window.Resources>((Storyboard)FindResource("animate")).Begin(Tab1, true);

次のコード エラーは、PauseStoryboardイベントが animate を見つけられないことを示しています。これは、テンプレートに存在しないため、理にかなっています。イベントではBeginStoryboardリソースにバインドできますが、一時停止と再開ではできません。

<Style x:Key="HiddenTabItem" TargetType="{x:Type TabItem}">
    <Setter Property="HeaderTemplate">
        <Setter.Value>
            <DataTemplate DataType="{x:Type TabItem}">
                <Border x:Name="grid">
                    <ContentPresenter>
                        <ContentPresenter.Content>
                            <TextBlock Text="{TemplateBinding Content}"/>
                        </ContentPresenter.Content>
                    </ContentPresenter>
                </Border>

                <DataTemplate.Triggers>
                    <EventTrigger RoutedEvent="MouseEnter">
                        <PauseStoryboard BeginStoryboardName="animate" />
                    </EventTrigger>
                </DataTemplate.Triggers>
            </DataTemplate>
        </Setter.Value>
    </Setter>
</Style>

アニメーションの絵コンテ:

<Window.Resources>

    <Storyboard x:Key="animate">
        <ObjectAnimationUsingKeyFrames BeginTime="0:0:0" Storyboard.TargetProperty="Visibility">
            <DiscreteObjectKeyFrame KeyTime="0">
                <DiscreteObjectKeyFrame.Value>
                    <Visibility>Visible</Visibility>
                </DiscreteObjectKeyFrame.Value>
            </DiscreteObjectKeyFrame>
        </ObjectAnimationUsingKeyFrames>
        <DoubleAnimation BeginTime="0:0:0.0" Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:0.2"/>
        <DoubleAnimation BeginTime="0:0:2.5" Storyboard.TargetProperty="Opacity" From="1" To="0" Duration="0:0:0.5"/>
        <ObjectAnimationUsingKeyFrames BeginTime="0:0:5.5" Storyboard.TargetProperty="Visibility">
            <DiscreteObjectKeyFrame KeyTime="0">
                <DiscreteObjectKeyFrame.Value>
                    <Visibility>Hidden</Visibility>
                </DiscreteObjectKeyFrame.Value>
            </DiscreteObjectKeyFrame>
        </ObjectAnimationUsingKeyFrames>
    </Storyboard>

</Window.Resources>
4

1 に答える 1