如何确定Windows Phone 7的方向?

时间:2010-03-18 21:32:49

标签: windows-phone-7

如何判断设备是垂直(纵向)还是水平(横向)?

是否存在简化此操作的API,或者您是否必须使用加速度计“手动”进行测定?

3 个答案:

答案 0 :(得分:4)

我自己只看了windows 7手机(通过vs2010快速手机版)。

似乎在这个

背后的代码中
 public MainPage()
        {
            InitializeComponent();
            // seems to set the supported orientations that your program will support.
            SupportedOrientations = SupportedPageOrientation.Portrait | SupportedPageOrientation.Landscape;
        }

然后实际的表格有

  private void PhoneApplicationPage_OrientationChanging(object sender, OrientationChangedEventArgs e)
        {
            var test = e.Orientation;

        }

因此,当方向改变时,e.Orientation将告诉你它的方向。比如LandscapeRight。

答案 1 :(得分:2)

此外,您不必仅通过事件跟踪此事件,您可以直接从PhoneApplicationPage实例请求它:

private void Button_Click(object sender, RoutedEventArgs e)
{
    MyCurrentOrientation.Text = this.Orientation.ToString();
}

答案 2 :(得分:0)

你也可以通过这个问题来询问它。当你的应用程序启动时,方向会让你知道方向是什么。除此之外,您还可以使用OrientationChanged事件。

在你的主要:

OrientationChanged += new EventHandler<OrientationChangedEventArgs>(MainPage_OrientationChanged);

void MainPage_OrientationChanged(object sender, OrientationChangedEventArgs e)

{

   Console.WriteLine(e.Orientation.ToString());

}