我正在为Windows Phone 8创建一个应用程序,我想改变主题颜色,而不管用户在手机操作系统中设置的主题是什么,就像其他应用程序一样(例如Skype)。
到目前为止,我只能通过访问XAML中的LayoutRoot元素来更改背景颜色:
this.LayoutRoot.Background = new SolidColorBrush(Colors.White);
前景色:
(App.Current.Resources["PhoneForegroundBrush"] as SolidColorBrush).Color = Colors.Green;
但是,以下内容在Windows Phone 8上无法使用:
(App.Current.Resources["PhoneBackgroundBrush"] as SolidColorBrush).Color = Colors.White;
(App.Current.Resources["PhoneAccentBrush"] as SolidColorBrush).Color = Colors.Yellow;
我不知道为什么无法更改PhoneBackgroundBrush
或PhoneAccentBrush
,我已经尝试过谷歌寻找解决方案,但它们只适用于Windows Phone 7 SDK。这里的教程适用于WP 7,但不适用于WP 8。
谢谢!
using System.Windows.Media;
添加到App.xaml.cs
的最上面,并在InitializeLanguage();
后面的App()
中添加了你的代码,但是没有任何效果。我也把它放在构造函数的开头,但也没有任何区别。 - Seb123