1

コントロールのスタイルに取り組んでいます。マウスオーバーが行われたときにコントロールの境界線の太さを変更したい。コードビハインドで書くのではなく、スタイル自体にこれを書きたい

ということで、以下の方法でやってみました。

<VisualState x:Name="MouseOver">
<Storyboard>
<DoubleAnimationUsingKeyFrames Storyboard.TargetName="Border" Storyboard.TargetProperty="BorderThickness">
<SplineDoubleKeyFrame  KeyTime="0" Value="2" />                                   
</DoubleAnimationUsingKeyFrames>
</Storyboard>
</VisualState>

しかし、これはエラーをスローしています。

この機能を実現するにはどうすればよいですか。

4

1 に答える 1

5

ObjectAnimationUsingKeyFramesあなたの場合は代わりに使用DoubleAnimationUsingKeyFramesしてください:

<ObjectAnimationUsingKeyFrames Storyboard.TargetName="Border" Storyboard.TargetProperty="BorderThickness">
    <DiscreteObjectKeyFrame KeyTime="0" Value="2"/>
</ObjectAnimationUsingKeyFrames>

DoubleAnimationUsingKeyFramesDoubleプロパティの値をアニメートしますが、BorderThicknessはタイプでありThickness、ではありませんDouble

于 2012-08-27T13:49:15.787 に答える