当前位置:  开发笔记 > 编程语言 > 正文

在Visual Studio 2008 for .NET CF中处理不同的解决方案

如何解决《在VisualStudio2008for.NETCF中处理不同的解决方案》经验,为你挑选了2个好方法。

我正在开发一个基于.NET CF的图形应用程序,我的项目涉及大量的绘图图像,我们决定在不同的手机分辨率上移植应用程序.(240 X 240,480 X 640)等.

我将如何在单一解决方案/项目中实现这一目标?

是否需要根据分辨率创建不同的项目?我如何处理常见文件?我需要在所有设备之间进行其中一个公共类的更改.

谢谢,Cronos



1> MusiGenesis..:

不要听那个白痴MusiGenesis.处理Windows Mobile设备的不同屏幕分辨率的更好方法是使用表单继承,可以轻松地将其添加到现有CF应用程序中.

基本上,您为标准240x320屏幕设计每个表单.当您需要为新分辨率重新安排表单时(例如240x240),您可以向项目添加新表单并使其继承自原始240x320表单:

public partial class frmDialog240x240: frmDialog

而不只是形式:

public partial class frmDialog240x240: Form

像往常一样.在原始表单上,您需要将每个控件的Modifiers属性设置为Protected(而不是默认的Private).在新表单的设计器中,您将看到您继承的表单上的所有控件,您可以移动它们并根据需要调整它们以适应新的屏幕尺寸(这不会影响原始表单的尺寸)布局).

当程序运行时,它很容易检查运行它的设备的屏幕分辨率并创建适当的表格(工厂方法对此有利).您的新表单从旧表单继承了所有内容,但使用了新的自定义布局.

这种方法可以避免代码重复,因为没有代码重复.



2> ctacke..:

锚定和对接是处理不同分辨率的最常用机制(还要记住,许多设备可以旋转屏幕,因此您甚至需要在单个设备上处理更改).如果需要,获取屏幕大小就像查询Screen对象一样简单:

int screenWidth = Screen.PrimaryScreen.Bounds.Width;
int workingHeight = Screen.PrimaryScreen.WorkingArea.Height;

推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有