none
Búsqueda y selección de un registro en DataGridView RRS feed

  • Pregunta

  • Hola.

    Voy iniciando en la programación. Quiero hacer una búsqueda en un DataGridView, el valor a buscar entraría por un textbox, cuando lo busque mostrar el resulatados en el Grid y en el grid seleccionar el dato requerido y guardarlos en otra tabla.

    No he podido lograr la busqueda en el grid, estoy perdida. Ojala me pudieran orientar.

    Gracias 

    martes, 15 de enero de 2019 20:25

Respuestas

  • El truco está en que no haces la búsqueda sobre el propio grid, sino que la haces sobre el objeto que tienes vinculado al DataSource del grid.

    Lo más típico es que tengas conectado un DataTable:

    DataTable dt = ... 'Cargar de datos el datatable
    dataGridView1.DataSource = dt;


    Pues bien, en un caso así lo primero que harías es intercalar un DataView:

    DataTable dt = ... 'Cargar de datos el datatable
    DataView dv = dt.DefaultView;
    dataGridView1.DataSource = dv;

    Hasta aquí no se notará ninguna diferencia; el grid seguirá mostrando lo mismo que antes. Pero ahora, cuando quieras filtrar, basta que le apliques el filtro al DataView:

    dv.RowFilter="Columna1 LIKE '" + textBox1.Text + "%'"

    Desde luego ese filtro es solo un ejemplo, puedes poner las columnas que quieras y las expresiones que necesites, no tiene por qué ser un LIKE.

    En el momento en que aplicas ese filtro, el DataGridView muestra de manera automática únicamente las filas que lo cumplen.


    martes, 15 de enero de 2019 22:21
    Moderador