Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Windows Phone 7 - dynamically set button background color from Hex? [duplicate]

Possible Duplicate:
Change custom color for Rectangle.Fill or Grid.Background

I'm trying to dynamically set a button background color from Hex in Windows Phone 7.

    SolidColorBrush myBrush = new SolidColorBrush();
    myBrush.Color = ColorTranslator.FromHtml("#123456");
    pbMood.Background = myBrush;

ColorTranslator seems to not be available. That line gives a compiler error that it isn't found.

Am I looking in the wrong place (a different namespace?), or is there another way to do this from code?

like image 812
pearcewg Avatar asked Nov 29 '10 16:11

pearcewg


2 Answers

This class is not available in Silverlight.

Instead, you can write it yourself.

public static SolidColorBrush GetColorFromHexa(string hexaColor)
{
    return new SolidColorBrush(
        Color.FromArgb(
            Convert.ToByte(hexaColor.Substring(1, 2), 16),
            Convert.ToByte(hexaColor.Substring(3, 2), 16),
            Convert.ToByte(hexaColor.Substring(5, 2), 16),
            Convert.ToByte(hexaColor.Substring(7, 2), 16)
        )
    );
}
like image 144
SLaks Avatar answered Nov 14 '22 16:11

SLaks


This StackOverflow answer gives an even simpler way to use hex values to create a SolidColorBrush.

Brush brush = new SolidColorBrush(new Color() { R = 0xFF, G = 0xA6, B = 0x10});
like image 3
AffluentOwl Avatar answered Nov 14 '22 16:11

AffluentOwl