2012-08-28 16 views
5

Nella mia applicazione phone7 di Windows ho inserito una tela e ho impostato il colore di sfondo su un codice esadecimale. Ora non sono in grado di ottenere il valore del codice colore esadecimale tramite il codice C# . Ho usato il codice qui sotto ma dà il valore del colore in system.windows.media.brush.Plz aiutami con una risposta?Conversione da system.windows.media.brush a codice colore esadecimale

clr = Convert.ToString(clr1.Background); 

risposta

10

sembra che restituisce un Brush e dal momento che è stato impostato un colore che dovrebbe restituire un SolidColorBrush. Prova questo

var color = ((SolidColorBrush)clr1.Background).Color.ToString(); 

Esempio:

var color = new Color() {R = 0xF0, G = 0x10, B = 0x80}; 
var brush = new SolidColorBrush(color); 
var hexcolor = brush.Color.ToString(); 

hexcolor uguale "#00F01080"

+0

jonas Ciao, non ha ancora work.It tornare System.Windows.Media.SolidColorBrush. –

+0

Sì? Un SolidColorBrush dovrebbe avere una proprietà Color ed era quello che stavo cercando di usare. –

+0

Quindi è possibile convertire System.Windows.Media.SolidColorBrush in codice colore esadecimale? –