2013-04-22 58 views
0

嗨即时通讯目前正在为客户开发一个应用程序,客户需要一个与公司颜色匹配的特定主题。Windows Phone 8主题覆盖默认主题不工作

我现在正在尝试覆盖默认主题,因此客户主题将始终是使用的主题。目前我已经试过的方式从该网站:

http://www.geekchamp.com/articles/windows-phone-mango-custom-application-theme-step-by-step

,也有一些建议从这些:

How to force to use light theme in Windows Phone 7? http://matthiasshapiro.com/2011/01/17/theme-forcing-for-windows-phone-7-silverlight/

这些都是一些旧的文章,确实是,但大部分应该是相同的在Windows Phone 8

即使将ThemeResource,xaml移动到项目中,我也无法获得其中的任何一种效果nk it like wise:

<Application.Resources> 
    <ResourceDictionary> 
     <ResourceDictionary.MergedDictionaries> 
      <ResourceDictionary Source="Resources/ThemeResources.xaml" /> 
     </ResourceDictionary.MergedDictionaries> 
    </ResourceDictionary>   
</Application.Resources> 

它stil使用手机的默认主题黑暗。

我怎么过发现,如果你不使用默认的变量的名字,如:PhoneBackgroundBrush

,并使用你自己的命名规则,然后这个工程。我宁愿只是覆盖默认的变量名称。

我的问题是非常喜欢这对这个职位:Custom Theme That Overrides Default Theme WP7

真的没有办法覆盖默认主题和它的变量还是我不得不让我自己去通过我的所有控件使用自己命名约定?

任何帮助非常感谢。

问候 延斯·西蒙森

回答

1

在你会看到报表喜欢底部的默认资源字典(S);

<Style TargetType="Button" BasedOn="{StaticResource DefaultButtonStyle}"/> 

评论他们或任何和使用相同的东西在你自己的资源词典的底部而不是像;

<Style TargetType="Button" BasedOn="{StaticResource MyCustomButtonStyle}"/> 

该类型的任何东西要继承你的风格模板,而不是默认的和有效的全局应用你的主题,而无需隐含地定义他们所有的地方之后。

希望这会有所帮助。

+0

嗨克里斯感谢回复我试过你的建议,但我无法得到它的工作。直到它到达设备时为止。 – 2013-04-23 05:38:47

+0

然后,我会问你如何使你的资源字典的可用.. – 2013-04-23 13:31:37

+0

嗨克里斯感谢回复我得到它的工作似乎该文件需要建立行动后,开始运行设置为资源。我拿着东西进一步去了一个电话,从nuget的管理员,这也帮助了很多。所以现在就解决了。感谢帮助队友。 – 2013-04-23 14:59:31