Estoy tratando de colorear un cuadro de texto leyendo un color asignado a un texto específico.
Este es mi código:
using (MySQLHelper LeftCurrent = new MySQLHelper())
{
string mysql = "Select BandColor as LeftSideCurrentBandColor from band WHERE PnBanda LIKE '" + textBoxLeftSideCurrentBandColor.Text + "'";
MySqlCommand LeftCurrentCommand = LeftCurrent.GetCommand(mysql);
using (MySqlDataReader reader = LeftCurrentCommand.ExecuteReader())
while (reader.Read())
{
textBoxLeftSideCurrentBandColor.BackColor = System.Drawing.Color.FromName(reader.GetString(0));
}
Pero cada vez que cambio el texto especificado, el color no cambiará. ¿Cómo puedo hacer esto?
Tengo un cuadro de texto que se llena con uno de estos valores, N \ A, 108/5010/0300, 108/5015/0200, 108/5015/0900.
Cuando el cuadro de texto se llena con un valor, quiero colorearlo con el color especificado.
1 N\A Red
2 108/5010/0300 yellow
3 108/5015/0200 DarkBlue
4 108/5015/0900 white
2 respuestas
Intente esto sin usar el bucle porque va a recuperar un valor correcto
using (MySQLHelper LeftCurrent = new MySQLHelper())
{
string mysql = "Select BandColor as LeftSideCurrentBandColor from band WHERE PnBanda LIKE '" + textBoxLeftSideCurrentBandColor.Text + "'";
MySqlCommand LeftCurrentCommand = LeftCurrent.GetCommand(mysql);
textBoxLeftSideCurrentBandColor.BackColor = System.Drawing.Color.FromName((LeftCurrentCommand.ExecuteOracleScalar() ?? "RED").ToString());
}
Si obtiene más filas si ese valor es una cadena nula o vacía, debería obtener una excepción. pero su depuración está bien, como se le dijo, pruebe SELECT TOP (1) o LIMIT 1, algo
Nuevas preguntas
c#
C # (pronunciado "see sharp") es un lenguaje de programación multi-paradigma de alto nivel, estáticamente tipado desarrollado por Microsoft. El código C # generalmente se dirige a la familia de herramientas y tiempos de ejecución .NET de Microsoft, que incluyen .NET Framework, .NET Core y Xamarin, entre otros. Use esta etiqueta para preguntas sobre el código escrito en las especificaciones formales de C # o C #.