none
ComboBox c# RRS feed

  • Pregunta

  • Hola

    Tengo el textBox1 y comboBox1 (el combo box tiene varios items que los trae desde SQL Server)

    En un boton tengo este codigito:

          if (comboBox1.SelectedValue.ToString() == "En curso / Pagado - Se debe hacer el delivery")
                { textBox1.Text = "2"; }

    Es decir, si eligo ese item del combobox, quiero que en el textbox automaticamente figure un 2. Es posible esto?? Porque no me esta saliendo


    A


    • Editado Eric_96 martes, 6 de octubre de 2020 2:04
    martes, 6 de octubre de 2020 1:46

Respuestas

  • Proba una cosa:

    Modifica el método del botón, así:

    private void button8_Click(object sender, EventArgs e)
    {
        string item = comboBox1.SelectedItem.ToString();
        if (item == "En curso / Pagado - Se debe hacer el delivery")
            txtIdNuevoEstado.Text = "2";
    } 
    
    y pone un breakpoint en la linea del if, ejecuta en modo Debug, y fijate cual es el valor de item, que contendría el SelectedItem del ComboBox. Fijate bien si coincide exactamente el string en la lista que el string con el cual comparas ("En curso / Pagado ..... ").

    Si el cuerpo del if es una sola sentencia, no necesitas poner llaves { }.

    • Marcado como respuesta Eric_96 sábado, 17 de octubre de 2020 16:46
    martes, 6 de octubre de 2020 3:27

Todas las respuestas

  • Hola Yan Eric

    SelectedValue por lo general es un int, que suele ser una PK o FK, es el valor o identificador de cada item, que suele vincular una tabla dada con una tabla detalle por FK -> PK. La propiedad que contiene el string de los que se muestran en la lista desplegable es SelectedItem.

    Sería:

    if (comboBox1.SelectedItem.ToString() == "En curso / Pagado - Se debe hacer el delivery")

        textBox1.Text = "2";

    Saludos

    Pablo

    martes, 6 de octubre de 2020 2:11
  • Lo probe de esa manera tambien Pablo, pero el textBox1 queda vacio, no se mete el dato "2" en el textbox

    A

    martes, 6 de octubre de 2020 2:39
  • Ese código se ejecuta cuando clickeas un botón? Está bien asignado el método del botón al evento Click? Fijate en el cuadro de Propiedades en eventos. Porque debería funcionar. No es algo muy complejo.

    Si no, podes pasar más código, o darme más detalles del asunto. 

    martes, 6 de octubre de 2020 2:59
  • Si, la verdad que yo tampoco le encuentro donde puede estar falla en algo tan simple. 

    1) Codigo del boton

            

     private void button8_Click(object sender, EventArgs e)
            {
        if (comboBox1.SelectedItem.ToString() == "En curso / Pagado - Se debe hacer el delivery")
                { txtIdNuevoEstado.Text = "2"; }

    }

    2) Procedimiento almacenado "CargaComboBoxEstado":

    as
    select id_estado_venta, EstadoVenta from EstadoVenta

    3) Metodo CargarCombo()

      private DataTable CargarCombo()
            {

                SqlDataAdapter da = new SqlDataAdapter("CargaComboBoxEstado", conexion);
                da.SelectCommand.CommandType = CommandType.StoredProcedure;
                DataTable dt = new DataTable();
                da.Fill(dt);
                return dt;


            }

    4) Form_Load:

    comboBox1.DataSource = CargarCombo();
    comboBox1.DisplayMember = "EstadoVenta";
    comboBox1.ValueMember = "id_estado_venta";
    comboBox1.SelectedValue = 1;


    A

    martes, 6 de octubre de 2020 3:06
  • Proba una cosa:

    Modifica el método del botón, así:

    private void button8_Click(object sender, EventArgs e)
    {
        string item = comboBox1.SelectedItem.ToString();
        if (item == "En curso / Pagado - Se debe hacer el delivery")
            txtIdNuevoEstado.Text = "2";
    } 
    
    y pone un breakpoint en la linea del if, ejecuta en modo Debug, y fijate cual es el valor de item, que contendría el SelectedItem del ComboBox. Fijate bien si coincide exactamente el string en la lista que el string con el cual comparas ("En curso / Pagado ..... ").

    Si el cuerpo del if es una sola sentencia, no necesitas poner llaves { }.

    • Marcado como respuesta Eric_96 sábado, 17 de octubre de 2020 16:46
    martes, 6 de octubre de 2020 3:27
  • Hola Yan Eric Abramian, 

      

    ¿Alguna novedad sobre la consulta realizada? ¿Han sido útiles las  respuestas proporcionadas?  

    Espero su respuesta.  

    Gracias por usar los foros de MSDN.  

    Andres Aguilar 

    ____________________________  

     

    Por favor recuerde "Marcar como respuesta" las respuestas que hayan resuelto su problema, es una forma común de reconocer a aquellos que han ayudado, y hace que sea más fácil para los otros visitantes encontrar la solución más tarde.

    Si tiene algún cumplido o reclamo sobre el soporte de MSDN sientase en la libertad de contactar  MSDNFSF@microsoft.com. 

    martes, 6 de octubre de 2020 14:30
    Moderador