1

ユーザーがボタンを押したときに、実行時にサーフェス アプリケーションの UI を 180 度回転させる必要があります。どうすればいいですか?

4

1 に答える 1

1

一番上のパネルにRotateTransformを 180 度の角度で適用するだけです (必要に応じて、実際のサーフェス ウィンドウにも適用できると思います)。

<s:SurfaceWindow x:Class="SurfaceApplication1.SurfaceWindow1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:s="http://schemas.microsoft.com/surface/2008"
    Title="SurfaceApplication1">
  <Grid>
    <Grid.LayoutTransform>
      <RotateTransform x:Name="mainOrientation"/>
    </Grid.LayoutTransform>
    <s:SurfaceButton Click="btn_Click" Content="Click to rotate" />   
    ... other content here ...
   </Grid>
</s:SurfaceWindow>

そしてコードビハインドで:

private void btn_Click (object sender, RoutedEventArgs e)
{
    if (mainOrientation.Angle == 0)
        mainOrientation.Angle = 180;
    else
        mainOrientation.Angle = 0;
}

関連トピックとして、サーフェスのOrientationChanged イベントをリッスンして、ユーザーがアプリの側面を変更したことを知ることもできます。これが発生した場合は、アプリを正しい面に裏返すことをお勧めします。

于 2010-05-05T16:54:42.033 に答える