コラム:間違っていたのは私でした~RepeatBehavior="1"と書いてはいけません
先に コラム:Silverlight 2.0ベータ1ではRepeatBehavior="1"と書いても無限に繰り返される不具合? という記事を書きましたが、私が間違っていました。その補足記事です。RepeatBehaviorで回数を指定するときは、RepeatBehavior="1x" や RepeatBehavior="5x" のように「x」を付ける必要があります。なので、先のサンプルは次のように書く必要があります。
<Storyboard x:Name="a6">
<DoubleAnimation
Storyboard.TargetName="menu6_scale"
Storyboard.TargetProperty="ScaleX"
From="1.0" To="1.5" Duration="0:0:0.2"
AutoReverse="True"
RepeatBehavior="1x"
/>
<DoubleAnimation
Storyboard.TargetName="menu6_scale"
Storyboard.TargetProperty="ScaleY"
From="1.0" To="1.5" Duration="0:0:0.2"
AutoReverse="True"
RepeatBehavior="1x"
/>
</Storyboard>
これで、Silverlight 1.0でも2.0ベータ1でも同じ動きをするようになります。Silverlight 1.0でRepeatBehavior="1"と書いたものが正しく動いていたので、その書き方でよいのだと思い込んでいました。RepeatBehaviorの詳細は こちら です。なお、Silverlight 2.0でRepeatBehavior="1"がどう解釈されるのかは、よく分かりません。MSDNの Silverlight-JavaScript のフォーラム に質問したら、すぐに解決しました。あぁ、恥ずかしい。というわけで、サンプル類のRepeatBehaviorの指定は、すべて修正しておきます。
<< JavaScriptでSilverlight 目次 >>
このページは
xfy Blog Editor
を利用して作成されました。










コメント