none
Desmarcar datgridviewcheckboxcell RRS feed

  • Pregunta

  • Hola, estoy realizando un proyecto en VS2015 y BD Oracle; tengo un problema cuento con un datagridview enlazada a datos, y dentro del grid tengo columnas datgridviewcheckboxcell también enlazados a datos. Si doy clic en cualquiera de ellos me manda a su respectiva ventana modal, en la ventana tengo unos valores, los cuales se guardan en sus respectivos registros cuando doy clic en el botón Ok, pero si yo presiono CANCELAR, se cierra la ventana modal, y se debería desmarcar el datgridviewcheckboxcell, pero no lo hace.

    Así es como cargo los datos en el datagridview:

      dgvProdDetalle.DataSource = vts.CargarProd(dgvProdDetalle, orden);

    Y así es como mando a llamar a la ventana modal: 

     if (prod_env == true)
                        {
                            if (isCellChecked_Envio == true)
                            {
                                //dato_env = 0;
                                dgvProdDetalle.CurrentRow.Cells["env_prod"].Value = false;
                                eliminarEnvio();
                            }
                            else if (isCellChecked_Envio == false)
                            {
                                //dato_env = 1;
                                dgvProdDetalle.CurrentRow.Cells["env_prod"].Value = true;
                                //MessageBox.Show("Envio agregado");
    
                                entrega_prod llamar = new entrega_prod();
                                llamar.orden = orden;
                                llamar.nombre = txt_Nombre.Text + " " + txtAp_Paterno.Text + " " + txtAp_Materno.Text;
                                llamar.rfc = txt_RFC.Text;
                                llamar.correo = txt_Correo.Text;
                                llamar.cte_id = cte_id;
                                llamar.prod_id = dgvProdDetalle.CurrentRow.Cells["id_producto"].Value.ToString();
                                llamar.Show();
                            }
                        }

    miércoles, 11 de julio de 2018 16:58

Todas las respuestas

  • hola

    >>Si doy clic en cualquiera de ellos me manda a su respectiva ventana modal

    porque dice ventana modal si en el codigo veo que usas el Show()

    si es modal deberia ser el ShowDialog()

    si la recarga la realizas despues del show entonces no se esta deteniendo la ejecucion

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 11 de julio de 2018 17:36
  • Cuando se trabaja enlazado a datos, uno utiliza la colección de objetos para averiguar cosas como el valor del checkbox que usted menciona.  ¿Qué tipo de objeto devuelve vts.CargarProd()?

    Yo siempre recomiendo vincular a una lista de objetos.  Esos objetos tendrían una propiedad Booleana que representaría el checkbox que usted menciona.

    Entonces en el contexto de su consulta, el formulario "llamar" recibiría una referencia al objeto.  Si el botón Cancelar se presiona, se le asignaría false la propiedad Booleana del objeto.  Como es el objeto vinculado a la grilla, el checkbox automáticamente se desmarca.


    Jose R. MCP
    My GIT Repositories | Mis Repositorios GIT

    jueves, 12 de julio de 2018 7:14
    Moderador