Home > WPF > [WPF] XAMLだけでコントロール回転

[WPF] XAMLだけでコントロール回転

StoryboardとTransformを使うと、XAMLだけでも簡単に張り付けた要素を回転させることができます。

Expression Blendがあればサクサク実装できるのですが、XAMLべた書きだと「あれ?どうするんだっけ?」なんてことがよくあるので、ちょっとしたメモ程度に・・・。
 

<Window.Resources>
    <Storyboard x:Key="RotateStoryboard" RepeatBehavior="Forever">
        <DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="mediaHoge" Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(TransformGroup.Children)[2].(RotateTransform.Angle)">
            <SplineDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
            <SplineDoubleKeyFrame KeyTime="00:00:02" Value="360"/>
        </DoubleAnimationUsingKeyFrames>
    </Storyboard>
</Window.Resources>

<Window.Triggers>
    <EventTrigger RoutedEvent="FrameworkElement.Loaded" SourceName="mediaHoge">
        <BeginStoryboard Storyboard="{StaticResource RotateStoryboard}"/>
    </EventTrigger>
</Window.Triggers>

<Grid x:Name="LayoutRoot">
    <MediaElement Grid.Row="0" Name="mediaHoge" Width="300" LoadedBehavior="Play" Source="C:\Users\Public\Videos\Sample Videos\Wildlife.wmv" >
        <MediaElement.LayoutTransform>
            <TransformGroup>
                <ScaleTransform/>
                <SkewTransform/>
                <RotateTransform/>
                <TranslateTransform/>
            </TransformGroup>
        </MediaElement.LayoutTransform>
    </MediaElement>
</Grid>

 

このソースをそのまま使う場合は<MediaElement>のSourceに設定するパスを適当なものに置き換えてください。
・・・こんなソースをそのまま使うことなんか無いか(笑)
 

関連があると思われる記事:

このエントリーをはてなブックマークに追加
はてなブックマーク - [WPF] XAMLだけでコントロール回転
Facebook にシェア
[`google_buzz` not found]
[`yahoo` not found]
[`livedoor` not found]
[`friendfeed` not found]
[`tweetmeme` not found]
[`grow` not found]

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://gacken.com/wp/program/wpf/719/trackback/
Listed below are links to weblogs that reference
[WPF] XAMLだけでコントロール回転 from ミライニトドケ

Home > WPF > [WPF] XAMLだけでコントロール回転

Search
Feeds
Meta
人気の記事

Return to page top