2013-06-10 20 views
7

私はWPFに新しく、DependencyPropertyに基づいてアニメーション化するカスタムユーザーコントロールを取得しようとしています。私はそれを使用してDataTriggerにバインドしている。 DependencyPropertyに等しい場合、エラーは、ユーザーコントロール内の四角形(buttonColor)の塗りつぶし色をアニメーション化する必要があります。しかし、何らかの理由で、RepeatBehaviorを6に設定しても、常に永久にループします。 RepeatBehavior属性を削除すると、アニメーションは(期待通りに)1回だけ再生されます。誰かが下のXAMLの抜粋を見て、私が間違っていることを教えてもらえたらと感謝します。 N回を繰り返すWPFストーリーボードアニメーションはRepeatBehavior = "6"でも永久にループします

<DataTrigger Binding="{Binding Path=ButtonAction.Status}" Value="Failure"> 
    <DataTrigger.EnterActions> 
     <StopStoryboard BeginStoryboardName="Pulse"/> 

     <BeginStoryboard> 
      <Storyboard RepeatBehavior="1"> 
       <ColorAnimation Storyboard.TargetName="buttonColor" Storyboard.TargetProperty="Fill.Color" To="{StaticResource FailedColor}" AutoReverse="True" /> 
      </Storyboard> 
     </BeginStoryboard> 
    </DataTrigger.EnterActions> 
</DataTrigger> 

答えて

28

正しい構文は次のとおりです。それが優先されるようにもリピート動作を制限する期間の値を設定する

<Storyboard RepeatBehavior="6x"> 
+0

これは私の問題を修正しました。小文字の 'x' – AXG1010

+0

@ AXG1010を修正する必要があることに注意してください。ありがとう –

0

:例えば

<Storyboard RepeatBehavior="Nx"> 

。したがって、ColorAnimationUsingKeyFramesタグで繰り返し動作を設定したが、ストーリーボードでDuration = "0:0:4"に設定すると、アニメーションは4秒間だけ繰り返されます。

関連する問題