Silverlight 如何在WindowsPhone7中处理定位?

Silverlight 如何在WindowsPhone7中处理定位?,silverlight,windows-phone-7,orientation,Silverlight,Windows Phone 7,Orientation,我已经创建了三页:-第1页主要,第2页肖像和第3页景观。我必须为不同的方向选择两个单独的页面,因为我的GUI组件布局在两种模式下完全不同。 main的支持方向为肖像或风景,第2页的支持方向为肖像,第3页的支持方向为风景。现在,根据主页的方向,调用下一个要打开的页面的方向 主页处于横向模式,下一页将打开第3页横向模式。现在我想如果用户切换到纵向模式,那么第2页纵向将打开。 我可以从主页切换到第3页或第2页,但如何从第2页切换到第3页,反之亦然 您可以处理OrientationChanged事件,并

我已经创建了三页:-第1页主要,第2页肖像和第3页景观。我必须为不同的方向选择两个单独的页面,因为我的GUI组件布局在两种模式下完全不同。 main的支持方向为肖像或风景,第2页的支持方向为肖像,第3页的支持方向为风景。现在,根据主页的方向,调用下一个要打开的页面的方向

主页处于横向模式,下一页将打开第3页横向模式。现在我想如果用户切换到纵向模式,那么第2页纵向将打开。
我可以从主页切换到第3页或第2页,但如何从第2页切换到第3页,反之亦然

您可以处理OrientationChanged事件,并在那里导航到任何合适的页面。请注意,您必须遵守“后退”按钮的规则,否则商店将不接受您的申请


更好的方法可能是为手机的不同方向设计完全不同的页面样式。这样,您就可以遵守商店的规则。

为不同的方向使用单独的页面是一个非常糟糕的主意,只会导致用户体验大大降低

更好的处理方法是使用VisualStateManager在方向改变时在不同布局之间切换。如果您的UI差异很大,那么您可以始终创建两个不同的用户控件,并在状态更改时切换它们的可见性


András Velvárt有一本书涵盖了这个主题,其中也包括了一个你可以使用的行为。

没错。我尝试了两个用户控件,一个用于横向,另一个用于纵向,根据方向添加到一个视图页上,但现在如何在视图页上获取用户控件的事件。假设我现在在用户控件上有按钮,我也希望在查看页面上获得该事件。这完全取决于您试图实现的目标。这就是模型-视图-模型(MVVM)模式与命令和事件聚合一起使用的地方。