webForumDet fria alternativet

WebColorConverter, från HEX-färg --> Color

.NET

1 svar · 370 visningar · startad av fredrik

Medlem sedan dec. 19991 072 inlägg
Frågan#1

Jag behöver omvandla en HTML HEX-färg till ett Color-objekt.
Jag hittade klassen "WebColorConverter" som enligt msdn kan göra precis det.

Men detta är ingen klass som går att använda direkt, utan det står:
"CAUTION You should never access a type converter directly. Instead, call the appropriate converter by using System.ComponentModel.TypeDescriptor."

Så...jag kollade exemplet men blev inte mycket klokare. Där stod bla:

Dim c As Color = CType(TypeDescriptor.GetConverter(GetType(Color)).ConvertFromString("Red"), Color)

Jag testade alla möjliga varianter, men lyckades inte...

Jag hade förvisso kunnat konvertera hex-värdet till tal och sedan användt "FromARGB"-metoden för att göra konverteringen...men om det nu finns en färdig funktion för detta är ju det att föredra...!

Tack på förhand!

Medlem sedan dec. 19991 072 inlägg
#2

...ibland så behöver man inte krångla till det...

"WebColorConverter"-klassen körs automatiskt när den känner att en "HEX"-färg skickas in...så jag använde helt enkelt:

Dim c As Color = CType(TypeDescriptor.GetConverter(GetType(Color)).ConvertFromString("#FFFF00"), Color)

...vilket också fungerade!

264 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)