- 我们有2种主题,黑色和白色,
根据这个主题,在我们的应用程序中,所有控件背景和所有属性都在变化..
我的问题是 - 我正在开发的应用程序是独立于主题的,我想要两种主题颜色相同的外观和感觉,无论是黑色还是白色。
我正在尝试的是为所有属性设置颜色 - 例如,背景,前景等
BorderBrush="{StaticResource WhiteSolidColorBrush}" Foreground="{StaticResource WhiteSolidColorBrush}"
这是问同样的问题,但我无法申请Windows Phone 8.1 sliverlight- Windows phone 8 How to be always on one theme even if phone's theme changed
怎么可能?
答案 0 :(得分:3)
Silverlight 8.1中有两个选项:
<强> 1 强>
就像Chris W.指出的那样,JeffWilcox主题经理在运行时覆盖了主题资源(不幸的是,在Xaml中无法做到这一点)。
您可以将VS中的Designer设置为您喜欢的主题。
<强> 2 强>
另一种方法是覆盖您使用的控件的默认样式。只需复制您使用的每个控件的默认样式,然后更改模板中的颜色资源。
您可以通过在编辑器中创建副本来访问模板(在大纲中选择控件,单击编辑模板&gt; 编辑副本,或者找到它们直接在SDK文件夹中:
C:\ Program Files(x86)\ Microsoft SDKs \ Windows Phone \ v8.1 \ Design \ System.Windows.xaml
我个人更喜欢第二种方法。这听起来像很多工作,但你实际上并没有使用这么多的控件。最近在一个大的应用程序结束时使用它最终只覆盖了11个控件模板(并且大多只是改变颜色和字体大小)。
答案 1 :(得分:2)
虽然我不确定你和@JeffWilcox主题经理有什么问题,因为它看起来很酷很强大。仍然总是可以明确地为您的应用程序覆盖这些资源(这看起来像他的主题管理器只是提供了一种更简单的方法。)
对于Windows Phone 8.1 silverlight in the docs,您可以找到与此相关的所有内容,而实现您需要的内容的过程非常简单。