wpのアニメーション
7650 ワード
アニメーションターゲット:依存アトリビュートでなければなりません.Double,Color,Point,Objectタイプに使用できます.対応するアニメーションクラスの後ろにAnimationを付けて、次のコードは360°回転することを示します.
xamlの例:
フェードアウトアニメーション:
<Button Content="Button No. 1"
Grid.Row="0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
RenderTransformOrigin="0.5 0.5"
Click="OnButtonClick">
<Button.RenderTransform>
<RotateTransform />
</Button.RenderTransform>
</Button>
void OnButtonClick(object sender, RoutedEventArgs args)
{
Button btn = sender as Button;
// x-y
RotateTransform rotateTransform = btn.RenderTransform as RotateTransform;
// Create and define animation
DoubleAnimation anima = new DoubleAnimation();
anima.From = 0;
anima.To = 360;
anima.Duration = new Duration(TimeSpan.FromSeconds(0.5));
// Set attached properties
Storyboard.SetTarget(anima, rotateTransform);
Storyboard.SetTargetProperty(anima, new PropertyPath(RotateTransform.AngleProperty));
// Create storyboard, add animation, and fire it up!
Storyboard storyboard = new Storyboard();
storyboard.Children.Add(anima);
storyboard.Begin();
}
xamlの例:
<Storyboard x:Name="storyboard1">
<DoubleAnimation Storyboard.TargetName="btn1"
Storyboard.TargetProperty="(Button.RenderTransform).Angle"
From="0" To="360" Duration="0:0:0.5" />
</Storyboard>
<Button Name="btn1"
Content="Button No. 1"
Grid.Row="0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
RenderTransformOrigin="0.5 0.5"
Click="OnButtonClick">
<Button.RenderTransform>
<RotateTransform x:Name="rotate1" />
</Button.RenderTransform>
</Button>
フェードアウトアニメーション:
<phone:PhoneApplicationPage.Triggers>
<EventTrigger>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="TitlePanel"
Storyboard.TargetProperty="Opacity"
From="0" To="1" Duration="0:0:10" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</phone:PhoneApplicationPage.Triggers>