Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 减轻用户的口音颜色_C#_Windows Phone 7_Colors_Windows Phone 8_Themes - Fatal编程技术网

C# 减轻用户的口音颜色

C# 减轻用户的口音颜色,c#,windows-phone-7,colors,windows-phone-8,themes,C#,Windows Phone 7,Colors,Windows Phone 8,Themes,对于我的应用程序中的某个功能,我想检索用户的口音颜色,然后将其调亮一定量,以提供一个更苍白的主题颜色版本,以便在应用程序中使用 有人知道我是如何做到这一点的吗 谢谢。在app.xaml.cs中放置以下内容 private void setAccentResources() { var accent = (Color)Current.Resources["PhoneAccentColor"]; var accent80 = accent; var accent60 = ac

对于我的应用程序中的某个功能,我想检索用户的口音颜色,然后将其调亮一定量,以提供一个更苍白的主题颜色版本,以便在应用程序中使用

有人知道我是如何做到这一点的吗


谢谢。

在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值。

当用户的主题颜色为白色时,您的预期行为是什么?我指的是强调色