ikarosの作業場

物理シミュレーションを得意とする自称C#エバンジェリスト。「なおこの記事は個人的見解であり、所属する組織の意見とは一切関係がありません」と書かざるを得なくなった悲しみを知れ

Tips:WPFでコントロールを回転させる

今日は回転させちゃうお話
ただし今日のお話はストアアプリ版の方でのお話です
デスクトップ版では通用しないお話なので悪しからず
画像の回転とかはよく使うと思うので

1.xaml上で回転させる

<!--Controlは回転させたいコントロールのこと(具体的にはButtonなりImageなりがくる)-->
<Control>
   <Control.RenderTransform>
      <CompositeTransform Rotation="(回転させたい角度)"/>
   </Control.RenderTransform>
</Control>

この場合回転の中心はコントロールの中心(縦幅、横幅の中点)となります

2.cs上で回転させる

var rotation = new RotateTransform();
rotation.Angle = (回転させたい角度);
control.RenderTransform = rotation;

この場合回転の中心はMargin点となりますコントロールの中心で回転させる場合は、Marginの取り方を変える。
つまりコントロールの
・VerticalAlignment
・HorizontalAlignment
の二つのプロパティを"Center"にする必要があります

またほかの点を回転の中心にする場合は、その点を指定することもできます

var rotation = new RotateTransform();
rotation.Angle = (回転させたい角度);
rotation.CenterX=(回転の中心のX座標の点)
rotation.CenterY=(回転の中心のY座標の点)
control.RenderTransform = rotation;

以上!

明日は幕張でエアレースを見に行きます
1か月以上心のよりどころにしてきたので楽しみです。
このブログでも少し写真でも載せようかななんて思ってます。はい。

当サイトのソースコード及びその他の情報は個人・商用問わず自由に使っていただいてかかまいませんが、当サイトの情報が元で発生したいかなる結果・不利益については責任を負いかねますのでご了承ください