none
Pasar a un método el nombre objeto de datagrid seleccionado con clic derecho RRS feed

  • Pregunta

  • Saludos buenos días compañeros, tengo la siguiente duda: tengo un formulario en c# con varios datagrid que contienen información de tablas; quisiera saber si se puede que al seleccionar dando clic derecho sobre cualesquier de los datagrid me aparezca un menú flotante con la opción de Buscar( lo cual ya tengo programado y funcionando). y cuando presione Buscar me mande llamar al metodo buscar, algo asi

    private void BuscarenDataGrid(DataGridView Dg, string TextoABuscar)

    {

    /*Código a buscar*/

    }

    Nota: cuando presiono Buscar, abro un formulario con showDialog y una caja de texto para tomar el string de Texto a Buscar.

    les comento un poco sobre lo que eh investigado. se que existe el control ActiveControl.Name, pero me regresa el nombre del datagrid como string lo cual no me funciona, ya que el método tiene que recibir el nombre del DataGrid como tipo DataGrid.

    Nota. Seria buena idea tener este método en una Clase Base y poder heredarlo en todos los formularios que trabajen con DataGridView para realizar busquedas sobre ellos.

    No se si alguno de ustedes ya ha programado este tipo de funciones alguna vez que tenga alguna sugerencia, saludos

    sábado, 16 de junio de 2018 16:50

Respuestas

  • Si ActiveControl le funciona, puede hacer esto:

    DataGridView grilla = ActiveControl as DataGridView;
    if (grilla != null)
    {
        //El control activo era efectivamente un DGV.  Hacer la búsqueda.
    }

    Nótese, sin embargo, que yo soy un aguerrido promotor del uso de colección de objetos como fuente de datos de grillas como el DataGridView.  Los controles como este tienen la propiedad DataSource que puede recibir la colección.  Entonces cuando uno trabaja así (vinculado a datos), normalmente lo correcto es realizar las operaciones sobre la colección de datos.  De esta forma yo haría la búsqueda usando la colección de objetos como fuente de datos, y solamente pediría la grilla para A. reasignar una nueva colección filtrada con los resultados de búsqueda, o B. seleccionar la primera fila que concuerda con el texto de búsqueda.


    Jose R. MCP
    My GIT Repositories | Mis Repositorios GIT

    sábado, 16 de junio de 2018 19:42
    Moderador