非表示のタブを持つタブ コントロールがあります。
フォームの特定の領域にマウスを合わせると、実行される c# ハンドラーが呼び出されます。
((Storyboard)FindResource("animate")).Begin(HiddenTab);
アニメーションのストーリーボード:
<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>
ここでやりたいことは、マウスがタブ項目の上にあるときにアニメーションを一時停止し、マウスがタブ項目を離れたときにアニメーションを再開することです。
EventSetter
コントロール テンプレートを介してタブ項目に sを適用し、次のように呼び出します。
((Storyboard)FindResource("animate")).Pause(HiddenTab);
しかし、ウィンドウ リソースとして定義されているanimate
ため、TabItem ControlTemplate 内で見つけることができないと書かれています。animate
一時停止/再開できるようにストーリーボードにアクセスするにはどうすればよいですか?