如何将应用程序栏颜色转换为主题资源颜色

时间:2013-12-08 23:16:38

标签: c# windows-phone-7 windows-phone-8

我只想自定义我的应用栏,以便在某些状态下使用不同的默认主题颜色。这是为了给标准应用程序栏带来一点不同的感觉。我的麻烦是将前景色和背景色设置为主题资源颜色。在尝试以下

时,我收到了无效的Cast异常
ApplicationBar.ForegroundColor = (Color)Application.Current.Resources["PhoneChromeBrush"];

我不知道为什么?需要注意的是,在调试之前没有发生明确的错误。

1 个答案:

答案 0 :(得分:1)

使用

ApplicationBar.ForegroundColor = (Application.Current.Resources["PhoneChromeBrush"] as SolidColorBrush).Color;

因为该资源是画笔(因此名称为PhoneChromeBrush),因此您必须先将其转换为SolidColorBrush,然后从中获取Color属性。