Twitter Facebook RSS Feed

jueves, 13 de noviembre de 2008 a las 18:22hs por Gustavo Cantero (The Wolf)

Muchas veces estamos trabajando con colores en .NET y necesitamos obtener el código HTML de los mismos para utilizarlo en un control, o el número correspondiente al color Ole para pasárselo a un componente COM (ActiveX).  El primer caso puede resolverse obteniendo cada componente RGB del color y pasando su valor numérico a hexadecimal, pero para convertirlo a Ole para utilizarlo en COM es más complicado.  Para resolver estas cuestiones en .NET existe la clase ColorTranslator, la cual se encuentra en el namespace System.Drawing, y permite convertir un color de .NET a HTML, Ole o Win32 y viceversa, o sea, de un valor entero de un color Ole o de Windows o de un string con un color HTML se puede obtener el color en .NET correspondiente.  Un ejemplo de esto se muetra en la siguientes lineas:

string strBlanco = "#FFFFFF"; //Blanco
string strRojo = "#FF0000"; //Rojo
 
//Estructura de .NET con el color blanco
System.Drawing.Color colorBlanco = System.Drawing.ColorTranslator.FromHtml(strBlanco);

//Estructura de .NET con el color rojo
System.Drawing.Color colorRojo = System.Drawing.ColorTranslator.FromHtml(strRojo);

//Valor numérico que representa el color blanco en Windows
int intBlanco = System.Drawing.ColorTranslator.ToWin32(colorBlanco);

//Valor numérico que representa el color rojo en Ole
int intRojo = System.Drawing.ColorTranslator.ToOle(colorRojo);

0 comentarios »

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.