RotateTransform:在二维x-y坐标系统内围绕指定点顺时针旋转某个对象:
在故事板中依赖属性为:RenderTransform.Angle
就是要进行旋转的角度
直接给按钮添加 RenderTransformOrigin="0.5,0.5" 是中心位置 。值是比例0 和1,
<Button Width="100" Height="40" RenderTransformOrigin="0.5,0.5">
TransformGroup 可以支持多个变换 支持平移 也支持旋转
<TransformGroup><TranslateTransform></TranslateTransform><!--Angle = "90" 一开始旋转的效果 正值是顺时针,赋值是逆时针--><!--CenterX="50" CenterY="20" 可以设置旋转的中心点,这两个值是宽度的一般和高度的一半--><RotateTransform x:Name="rot"></RotateTransform><ScaleTransform></ScaleTransform><SkewTransform></SkewTransform>
</TransformGroup>
第一个触发类型
<EventTrigger RoutedEvent="MouseEnter"><BeginStoryboard><Storyboard><!--Angle 角度--><DoubleAnimation Storyboard.TargetName="rot"Storyboard.TargetProperty="Angle"To="360"Duration="0:0:0.01"RepeatBehavior="Forever"></DoubleAnimation></Storyboard></BeginStoryboard>
</EventTrigger>
第二个触发器 触发这个事件的时候 开启了第二个动画,这个动画没有from to属性,可以在规定的时间内回到原始点
<EventTrigger RoutedEvent="MouseLeave"><BeginStoryboard><Storyboard><DoubleAnimation Storyboard.TargetProperty="RenderTransform.Children[1].Angle"Duration="0:0:2"></DoubleAnimation></Storyboard></BeginStoryboard>
</EventTrigger>