c# .net colors system.drawing.color

En C#, ¿cómo puedo crear un objeto System.Drawing.Color utilizando un valor hexadecimal?



.net colors (4)

¿Puedes cambiar los valores para comenzar con FF? Por ejemplo, FFFFFFFF = blanco. Esto es para agregar el valor alfa al principio.

Si es así, simplemente analice el valor con System.Drawing.Color.FromArgb . Toma un int donde los primeros 8 bits son el valor alfa. 255 es opaco.

Para convertir su cadena en un int, use Int32.Parse. P.ej

String HexColourValue = "FABFAB"; System.Drawing.Color colour = System.Drawing.Color.FromArgb(Int32.Parse("FF"+HexColourValue, System.Globalization.NumberStyles.HexNumber));

Asegúrese de que HexColourValue no tenga ''#'' en él.

Esta pregunta ya tiene una respuesta aquí:

En C #, ¿Cómo puedo crear un objeto System.Drawing.Color con un valor como este # FFFFF, # FGFG01, etc.?


var my col = Color.FromArgb (int x);

tenga en cuenta que también necesita especificar un valor alfa (probablemente desee FF para esto, es decir, completamente opaco, así que agregue 0xFF000000 al valor hexadecimal de color)


string hexValue = "#000000"; // You do need the hash Color colour = System.Drawing.ColorTranslator.FromHtml(hexValue); // Yippee

Edición: realmente necesita el hash, o el valor alfa no se tendrá en cuenta. Woops!


Color.FromArgb(Convert.ToInt32( str.Substring(1), 16 ));