none
SelectionChanged DataGridView desencadena cuando click en otros controles RRS feed

  • Pregunta

  • Bueno, he investigado por todo lado y no encuentro solución, me interesa recuperar los datos de una fila de un DATAGRIDVIEW y uso el evento selectionchanged y el modo de selección es rowselection, pero el evento desencadena cuando hago click enotros botones de otros paneles, es mas, también desencadena cuando cargo el DataGridView por medio de base de datos DATASOURSE.

    Quisiera saber como controlar las desencadenaciones.....

    miércoles, 25 de marzo de 2020 0:37

Todas las respuestas

  • hola

    >>uso el evento selectionchanged y el modo de selección es rowselection

    Podrias usar otros eventos, quizas ese no sea el que buscas

    CellContentClick

    podrias usar la propiedad

    CurrentRow

    para tener la row seleccionada

    -----

    Si usas el

    SelectionChanged

    quizas debas desasignar el evento cuando cargas los datos del grid usando el -= y asignarlo nuevamente luego con el +=

    How to subscribe to and unsubscribe from events

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    miércoles, 25 de marzo de 2020 3:47
  • Gracias por tu respuesta Leandro, acabo de probar con CellContentClick y no funciona, pero me podrias explicar mejor tu comentario "quizas debas desasignar el evento cuando cargas los datos del grid usando el -= y asignarlo nuevamente luego con el +=" Gracias.
    miércoles, 25 de marzo de 2020 16:45
  •                                    

    Este es el ejemplo que no funciona, ya que se desencadena SelectionChanged cuando haces click en botones de otros paneles

    private void BPermisos_Click(object sender, EventArgs e)
     {

                tapCrladmU.SelectedTab = tPpermisosUsuarios;
                Mostrar_Usuarios(DGVusuariosPermisos);

                LbNombreCompleto.Text = "";
                GBpermisos.Enabled = false;

     }            

    private void Mostrar_Usuarios(DataGridView DGV)
     {
                DGV.DataSource = Resultado.Mostrar_Datos_Usuarios();
                DGV.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

                DGV.ClearSelection();
     }

    private void DGVusuariosPermisos_SelectionChanged(object sender, EventArgs e)
    {

              MessageBox.Show(DGVusuariosPermisos.CurrentRow.Index.ToString());

              string pnombre = DGVusuariosPermisos.CurrentRow.Cells["PRIMER_NOMBRE"].Value.ToString();

    }

    miércoles, 25 de marzo de 2020 17:04