2013-07-31 65 views
0

對於我的應用程序中的某個功能,我希望檢索用戶的口音顏色,然後將其減輕一定的量,以便在應用程序中使用主題顏色的調色版。減輕用戶口音的顏色

有誰知道我該如何做到這一點?

謝謝。

+0

當用戶的主題顏色爲白色時,您的預期行爲是什麼? –

+0

我的意思是重音顏色 – Newbie

回答

0

將在您的app.xaml.cs以下

private void setAccentResources() 
{ 
    var accent = (Color)Current.Resources["PhoneAccentColor"]; 
    var accent80 = accent; 
    var accent60 = accent; 
    var accent40 = accent; 
    var accent20 = accent; 

    accent80.A = (byte)(accent.A * 0.8); 
    accent60.A = (byte)(accent.A * 0.6); 
    accent40.A = (byte)(accent.A * 0.4); 
    accent20.A = (byte)(accent.A * 0.2); 

    Resources.Add("PhoneAccentFullColor", new SolidColorBrush(accent)); 
    Resources.Add("PhoneAccent80Color", new SolidColorBrush(accent80)); 
    Resources.Add("PhoneAccent60Color", new SolidColorBrush(accent60)); 
    Resources.Add("PhoneAccent40Color", new SolidColorBrush(accent40)); 
    Resources.Add("PhoneAccent20Color", new SolidColorBrush(accent20)); 
} 

然後,您可以訪問它想:

<control Brush="{StaticResource ResourceKey=PhoneAccent40Color}" /> 

此調整alpha通道,因此將開始顯示任何東西,它覆蓋。如果您想調整顏色本身,您可以調整R,G和B值。