c# - resolucion - propiedades de button en visual basic
almacenar y recuperar colores con base de datos, aplicación de formularios de Windows C# (3)
Encontré una forma de obtener el código hexadecimal de un color seleccionado con ColorDialog
ColorDialog col = new ColorDialog();
col.ShowDialog();
string color = col.Color.ToArgb().ToString("x");
color = color.Substring(2, 6);
color = "#" + color;
MessageBox.Show(color);
button1.BackColor = System.Drawing.ColorTranslator.FromHtml(color);
Estoy haciendo una aplicación de Windows con C #. Estoy usando el cuadro de diálogo de color para que el usuario seleccione un color. Me gustaría almacenar ese color en una base de datos, y poder recuperarlo más adelante, y ser capaz de usar ese color en la interfaz de usuario.
¿Qué enfoque me sugerirías?
Utilizo las funciones System.Drawing.Color.FromArgb () y System.Drawing.Color.ToArgb () para convertir el color de y en entero, y lo guardo como int en la base de datos
La mejor manera será almacenar el color hexadecimal en un campo de base de datos nvarchar(7)
... la entrada sería #ffffff
como ejemplo. varchar(6)
funcionaría igual de bien y ocuparía menos espacio en su base de datos. Solo asegúrate de agregar el #
en tu código.
Como necesita convertirlo a / desde un color de control, puede usar System.Drawing.ColorTranslator.FromHtml(someHexColor)
// Hex to Control Color
var myColor = "#[color from database]";
var myControlColor = System.Drawing.ColorTranslator.FromHtml(myColor);
// Control Color to Hex
var colorBlue = System.Drawing.Color.Blue;
var hexBlue = System.Drawing.ColorTranslator.ToHtml(colorBlue);