2012-08-28 11 views
77

को हेक्साडेसिमल #FFFFFF कन्वर्ट करने के लिए:
How to get Color from Hex color code using .NET?कैसे संभव डुप्लिकेट System.Drawing.Color

मैं #FFFFFF तरह System.Drawing.Color के लिए एक स्ट्रिंग परिवर्तित करना चाहते हैं। आप उसे कैसे करते हैं?

+0

http://stackoverflow.com/questions/2109756/how-to-get-color- से-हेक्स-रंग-कोड-उपयोग-नेट –

+1

फिर से खोलने के लिए मतदान, डुप्लिकेट एक अलग प्रकार की रंग संरचना के साथ सौदा करता है। – gunr2171

उत्तर

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

नोट: हैश महत्वपूर्ण है!

+0

धन्यवाद। यह – user1531040

+0

हैश हैश वास्तव में महत्वपूर्ण है और रंग सटीक नहीं होगा। – teapeng

+1

यूडब्लूपी में क्या है, जहां कोई सिस्टम नहीं है। नामकरण स्थान? –

4

'#' निकालें और कर

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

ऐसे विकल्प उपलब्ध हैं जिन्हें संख्यात्मक मान में रूपांतरण की आवश्यकता नहीं है, यह एक अनावश्यक कदम है। ओपी का कहना है कि यह एक स्ट्रिंग – freefaller

+2

है अन्य समाधान स्ट्रिंग को एक संख्यात्मक मान में परिवर्तित कर रहे हैं, वे इसे आंतरिक रूप से कर रहे हैं। यदि यह ऑप्टिमाइज़ेशन का सवाल है, तो प्रदर्शन परीक्षण को यह देखने के लिए आवश्यक होगा कि 'Color.FromArgb() 'w /' int.Parse() 'ColorConvertor.ConvertFromString()' और 'ColorTranslator.FromHtml()' की तुलना करें। । – jwatts1980

+0

क्या उनके पास अल्फा मान 0 नहीं होगा? – Nyerguds

21

आप

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

या यह (आप की आवश्यकता होगी System.Windows.Media नाम स्थान) कर सकते हैं

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

से मेरे लिए काम करता है जब मैं सफेद रूपांतरित करता हूं, मुझे बिल्कुल सफेद रंग नहीं मिलता है। –

संबंधित मुद्दे