示例#1
0
 private void HandleTileColorChanged(MetroTileColor metroTileColor)
 {
     if (!IsLoaded)
     {
         return;
     }
     Background = MetroTileFrame.GetBackgroundBrushFromTileColor(TileColor);
 }
示例#2
0
        internal static Brush GetBackgroundBrushFromTileColor(MetroTileColor tileColor)
        {
            Color color1, color2;

            if (tileColor == MetroTileColor.None)
            {
                return(null);
            }

            if (tileColor == MetroTileColor.Blue)
            {
                color1 = GetColor(0x4C66A8);
                color2 = GetColor(0x5B78BE);
            }
            else if (tileColor == MetroTileColor.Green)
            {
                color1 = GetColor(0x7D972A);
                color2 = GetColor(0x98B133);
            }
            else if (tileColor == MetroTileColor.Magenta)
            {
                color1 = GetColor(0x765594);
                color2 = GetColor(0x8562B9);
            }
            else if (tileColor == MetroTileColor.Orange)
            {
                color1 = GetColor(0xDF8300);
                color2 = GetColor(0xE88800);
            }
            else if (tileColor == MetroTileColor.Plum)
            {
                color1 = GetColor(0x6D3453);
                color2 = GetColor(0x884371);
            }
            else if (tileColor == MetroTileColor.Teal)
            {
                color1 = GetColor(0x45A98E);
                color2 = GetColor(0x50BB9E);
            }
            else if (tileColor == MetroTileColor.Coffee)
            {
                color1 = GetColor(0x734C29);
                color2 = GetColor(0x664325);
            }
            else if (tileColor == MetroTileColor.RedOrange)
            {
                color1 = GetColor(0xC93C00);
                color2 = GetColor(0xBD3900);
            }
            else if (tileColor == MetroTileColor.RedViolet)
            {
                color1 = GetColor(0x730046);
                color2 = GetColor(0x66003D);
            }
            else if (tileColor == MetroTileColor.Olive)
            {
                color1 = GetColor(0xBFBB11);
                color2 = GetColor(0xB2B010);
            }
            else if (tileColor == MetroTileColor.DarkOlive)
            {
                color1 = GetColor(0x787860);
                color2 = GetColor(0x6B6B56);
            }
            else if (tileColor == MetroTileColor.Rust)
            {
                color1 = GetColor(0x301818);
                color2 = GetColor(0x1F0F0F);
            }
            else if (tileColor == MetroTileColor.Maroon)
            {
                color1 = GetColor(0x603030);
                color2 = GetColor(0x4F2828);
            }
            else if (tileColor == MetroTileColor.Yellowish)
            {
                color1 = GetColor(0xF2B705);
                color2 = GetColor(0xE0A904);
            }
            else if (tileColor == MetroTileColor.Blueish)
            {
                color1 = GetColor(0x03658C);
                color2 = GetColor(0x02587A);
            }
            else if (tileColor == MetroTileColor.DarkBlue)
            {
                color1 = GetColor(0x022E40);
                color2 = GetColor(0x022533);
            }
            else if (tileColor == MetroTileColor.Yellow)
            {
                color1 = GetColor(0xF8EA00);
                color2 = GetColor(0xE5DA00);
            }
            else if (tileColor == MetroTileColor.Gray)
            {
                color1 = GetColor(0x7B7F7E);
                color2 = GetColor(0x5E6160);
            }
            else if (tileColor == MetroTileColor.DarkGreen)
            {
                color1 = GetColor(0x172421);
                color2 = GetColor(0x141F1C);
            }
            else if (tileColor == MetroTileColor.MaroonWashed)
            {
                color1 = GetColor(0x965155);
                color2 = GetColor(0x8A4A4E);
            }
            else if (tileColor == MetroTileColor.PlumWashed)
            {
                color1 = GetColor(0x40374C);
                color2 = GetColor(0x362E40);
            }
            else // Default
            {
                color1 = GetColor(0x245375);
                color2 = GetColor(0x30679B);
            }

            var brush = new LinearGradientBrush();

            brush.GradientStops.Add(new GradientStop(color1, 0));
            brush.GradientStops.Add(new GradientStop(color2, 1));

            return(brush);
        }