以编程方式更改 Windows 8.1 Phone 支持的页面方向

Changing Supported Page Orientation programmatically for Windows 8.1 Phone

我的应用程序同时支持纵向和横向,并自动适应 UI 以适应屏幕尺寸。但是,我想提供一个选项来将屏幕锁定在当前方向。

如果我只是停止处理 SizeChanged 事件,那也无济于事,因为系统仍在旋转 UI 页面,所以它看起来被压缩和截断了。

根据 MSDN,有一种方法可以在 Xna 和 Silverlight 或 Windows API 中以编程方式设置支持的方向(Windows Store App 不允许使用)。有没有办法为通用应用程序(Windows 8.1 或 Windows 10)做到这一点?

您可以通过设置 DisplayInformation.AutoRotationPreferences 来控制它。

例如

DisplayInformation.AutoRotationPreferences = DisplayOrientations.Landscape;

如果您想同时支持两者,请将其设置为 .None