2013-12-08 55 views
2

我只想自定義我的應用程序欄,以便在某些狀態下使用不同的默認主題顏色。這是爲了給標準應用程序欄帶來一點不同的感覺。我的麻煩是將前景和背景顏色設置爲主題資源顏色。我在嘗試以下方法時遇到無效投射異常如何將應用程序欄顏色投射到主題資源顏色

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

而我不確定爲什麼?要注意的是,在調試之前不會發生明確的錯誤

回答

1

使用

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

,因爲資源是刷(故名PhoneChromeBrush),因此你必須把它轉換爲的SolidColorBrush,然後再從它那裏得到的顏色屬性。