Windows Mobile屏幕旋转

3

我有一个应用程序,目前正在为Windows Mobile 6设备和CE5设备构建。

这些设备的屏幕不同 - 一个是横屏,另一个是竖屏。

我需要在两个设备上正确显示应用程序。但是想知道最好的方法是什么?

1)我应该从Windows.Forms.screens中找到屏幕方向...然后为每个方向创建一个表单吗? 2)制作具有锚定控件的表单(以某种方式),使其无论方向如何都没有关系。 3)Microsoft还有其他方法吗?

该应用程序的输出类型为Windows应用程序。

任何想法将不胜感激!

谢谢 约翰


我也遇到了同样的问题,找不到比你前两个建议更好的解决方法。 - Timores
1
你应该将你的 [windowsmobile] 标签更改为 [windows-mobile]。 - Jared
2个回答

1

选项#1(为每个可能的分辨率提供唯一表单)将使您在未来添加对具有新分辨率的第三个设备的支持变得非常耗时。 您最好编写可以动态调整其控件大小以适应各种宽度屏幕的表单,然后允许它们在垂直方向上滚动。 别忘了,您的Windows移动用户可以在使用您的表单时从纵向切换到横向。


0
我的经验是,尝试动态调整不同纵横比率的界面布局是非常耗时的,并且会生成过于复杂和混乱的代码。通常情况下,你不仅需要锚定控件,还需要移动位置和布局。我通常为横屏和竖屏分别创建一个屏幕。我经常使用锚定来进行缩放(例如从240x320到480x640),但对于不同的方向,我使用完全独立的表单代码。保持元素名称相同,并将视图代码与演示者代码分开,这样易于维护和扩展。

你通常如何处理正在进行的方向切换? - Jared
我不确定我理解这个问题。当方向改变时,我会交换视图。它使用相同的Presenter,因此具有来自模型的相同基础数据。 - ctacke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接