2012-08-28 18 views

cevap

185
string hex = "#FFFFFF"; 
Color _color = System.Drawing.ColorTranslator.FromHtml(hex); 

Not yapın: karma önemlidir!

Sen

var color = System.Drawing.ColorTranslator.FromHtml("#FFFFFF"); 

Ya da bu (ihtiyacınız olacak System.Windows.Media ad) yapabilirsiniz

+0

Teşekkürler. Çalışır – user1531040

+0

Hash gerçekten önemli, renk doğru olmayacak. – teapeng

+1

System.Wrawing ad alanının olmadığı UWP'de ne var? –

4

'#' çıkarıp

Color c = Color.FromArgb(int.Parse("#FFFFFF".Replace("#",""), 
         System.Globalization.NumberStyles.AllowHexSpecifier)); 
+0

Sayısal bir değere dönüştürme gerektirmeyen seçenekler vardır, bu gereksiz bir adımdır. OP, – freefaller

+2

dizgisini belirtir. Diğer çözümler dizgiyi sayısal bir değere de dönüştürür, sadece dahili olarak yaparlar. Bu bir optimizasyon meselesiyse, o zaman Color.FromArgb() 'w /' int.Parse() 'ın' ColorConvertor.ConvertFromString() 've' ColorTranslator.FromHtml() 'ile nasıl karşılaştırıldığını görmek için performans testi gerekir. . – jwatts1980

+0

0 alfa değeri yok mu? – Nyerguds

21

var color = (Color)ColorConverter.ConvertFromString("#FFFFFF"); 
+0

dan çalışır Beyaz dönüştürdüğümde, beyaz rengi tam olarak değil. –