重塑WP7应用程序

时间:2013-03-07 01:18:15

标签: windows-phone-7 windows-phone-8 projects-and-solutions

我有一个WP7应用程序,我需要重新命名。我正在使用Visual Studio 2012。 我的问题是如何以最自动的方式管理品牌 假设我开发了主要品牌的应用程序,我需要为二级品牌重新设计。 次要品牌包括图像的更改和部分基本样式(使用基本样式,因此由共享的其他样式和模板引用)。 我更希望XAP只有自己品牌的图像。 我还需要有一个品牌或其他品牌使用设计师。

我尝试使用TFS分支用于此目的,它令人满意,但在每次合并(主要分支中的新功能或错误修复必须在辅助分支中合并)时,我需要注意不要覆盖图像和样式(如果更改),这是一个容易出错的过程,导致未检测到和严重的错误。

我考虑将所有内容放回主分支并通过将所有不同的图像和样式移动到不同的“主题”类库来管理Brands但是如何在引用之间轻松切换(我需要设计师,所以在设计时)?有没有办法为不同的解决方案配置提供不同的参考?

另一种选择可能是使用Branch和2主题类库,在辅助分支中,app将引用辅助主题类库。在纸面上它似乎是最好的选择,两个分支将静态链接资源,他们将有他们的设计师品牌,合并不应该影响在'主题'库中修改的任何东西。在尝试之前,我想知道是否有人有更好的选择或预见到任何问题。

谢谢。

1 个答案:

答案 0 :(得分:4)

我有类似的项目,我可以分享我试图解决它的方式。

我有以下项目结构

  • AppName.Common - 此处定义了所有常用代码,视图和数据模板

  • AppName.Main - 这里是主项目的App.xaml,具有特定样式和图像的资源

  • AppName.Branded - 这里是品牌项目的App.xaml,具有特定样式和图片的资源。同样在App.xaml中我配置了IoC容器,因为Branded和Main proj的一些行为是不同的。

所有样式都在Resourced字典的App.xaml中定义。因此,在运行时应用程序可以解决它们。有时您需要重新打开解决方案,而ReSharper也无法支持,它无法解析您的样式。

Blend for VS可以支持这种结构。您只需选择当前项目作为启动项目。

希望它会对你有所帮助。

不要忘记,如果您从其他程序集导航到View,则need to change path