Saltar al contenido principal

 none
LIMPIAR DATAGRIDVIEW C# RRS feed

  • Pregunta

  • Hola, buenos dias, tengo un datagridview enlazado a datos, despues de guardar la informacion del datagrid limpio el datagrid con la sentencia midatagrid.datasource = null, me limpia sin problemas el datagrid, pero tambien se me borra el nombre de las columnas.

    Desearia saber como hacer para mantener los nombres de las columnas del datagridview.

    Cualquier ayuda estare muy agradecido

    miércoles, 28 de agosto de 2013 13:23

Respuestas

  • Datatable dt = (DataTable)dgv.DataSource;
    dt.Clear();
    


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    • Marcado como respuesta JCORBETTO miércoles, 28 de agosto de 2013 17:49
    miércoles, 28 de agosto de 2013 14:12
    Moderador

Todas las respuestas

  • Hola

    podrías hacerlo de esta forma

    DataTable dt = new DataTable();
    dt.Rows.Add(dt.NewRow()); midatagrid.DataSource = dt; midatagrid.Rows[0].Visible = false;


    Si se solucionó tu consulta no olvides marcar la respuesta. Saludos

    miércoles, 28 de agosto de 2013 13:40
  • Que tipo de objetos usas para enlazar el datasource?

    Si es un datatable puedes usar el método DataTable.Clear Method

    Si es una lista List(Of T).Clear Method


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos


    miércoles, 28 de agosto de 2013 13:50
    Moderador
  • Muchas gracias Sergio por responder, si utilizo un datatable, este es mi codigo:

    ds = new DataSet();                                                                                                                                            dt = new DataTable();                                                                                                                                                                   cmSql = new SqlCommand("consultar_horario", conexion);  //consultar los horarios del docente
    cmSql.CommandType = CommandType.StoredProcedure;
    cmSql.Parameters.AddWithValue("@cod_docente", txtcoddocente.Text);
    cmSql.Parameters.AddWithValue("@curso", txtcurso.Text);
    cmSql.Parameters.AddWithValue("@tipo", txttipo.Text);
    cmSql.Parameters.AddWithValue("@contador", cbnumerocursos.Text);
    adapter = new SqlDataAdapter(cmSql);
    adapter.Fill(ds, "docente_horario");                                                                                                                     

    dt = ds.Tables["docente_horario"];                                                                                                      dgvhorario.DataSource = dt;

    miércoles, 28 de agosto de 2013 14:04
  • Gracias Jose por responder, ya lo voy a probar, cualquier cosa te comunicare.

    Gracias

    miércoles, 28 de agosto de 2013 14:06
  • Datatable dt = (DataTable)dgv.DataSource;
    dt.Clear();
    


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó vótala como útil. Saludos

    • Marcado como respuesta JCORBETTO miércoles, 28 de agosto de 2013 17:49
    miércoles, 28 de agosto de 2013 14:12
    Moderador
  • Gracias Sergio, funciono perfecto, te lo agradezco mucho
    miércoles, 28 de agosto de 2013 17:49
  • Yo no tengo enlazado el datagridview, por lo tanto las anteriores respuestas no me servian, por lo tanto he encontrado el modo directo de borrarlo, por si esto os sirve:

    midatagridview.Rows.Clear();

    midatagridview.Refresh();

    • Propuesto como respuesta Karen Fq jueves, 13 de abril de 2017 20:03
    • Votado como útil Joyce_ACModerator lunes, 15 de mayo de 2017 17:48
    lunes, 23 de febrero de 2015 13:06
  • Funciona genial!! Gracias!!
    domingo, 3 de mayo de 2015 21:38
  • Te agradezco, me sirvieron muy bien =) 
    jueves, 23 de julio de 2015 20:29
  • Hola que tal albert, intente hacerlo con el metodo que propones y me marca un error el cual dice: No se puede borrar esta lista. tendras informacion acerca de esto?
    jueves, 17 de septiembre de 2015 15:54
  • Gracias, me sirvio :D
    sábado, 6 de febrero de 2016 21:17
  • es: dataGridViewN.Rows.Clear();

    • Editado Albaertho sábado, 28 de mayo de 2016 7:40
    sábado, 28 de mayo de 2016 7:40
  • que significa el 0 ?

    miércoles, 7 de diciembre de 2016 21:43
  • Hola

    podrías hacerlo de esta forma

    DataTable dt = new DataTable();
    dt.Rows.Add(dt.NewRow()); midatagrid.DataSource = dt; midatagrid.Rows[0].Visible = false;


    Si se solucionó tu consulta no olvides marcar la respuesta. Saludos

    me aparece lo siguiente. que puedo hacer?

    jueves, 6 de abril de 2017 2:57
  • Muchas Gracias Me funciono a mi por igual
    viernes, 12 de mayo de 2017 21:01
  • Que tal, es una publicación que tiene mucho tiempo, ya... Este comentario lo hago 9 de junio del 2017.

    Pero bueno, a mi siempre me ha funcionado y como tu lo usas, según tu pregunta; es decir:

                    dtgvDatos.DataSource = null;
                    dtgvDatos.Refresh();

    Siendo dtgvDatos de tipo DataGridView, por su puesto antes de volver a cargar los datos, tienes que asignar la propiedad DataSource.

    Espero hayas solucionado el asunto desde que publicaste la cuestión y esto sirva para otros que buscan respuestas.

    • Propuesto como respuesta Jesus Fonseca lunes, 28 de octubre de 2019 18:01
    viernes, 9 de junio de 2017 15:04
  • una forma de limpiar el datagridview es: dtgvDatos.Rows.Clear();
    domingo, 2 de julio de 2017 3:37
  • me ha servido gracias...

    sábado, 18 de noviembre de 2017 1:31
  • Genio
    domingo, 11 de marzo de 2018 20:18
  • Gracias Albert Turmo, me sirvio tu respuesta.
    jueves, 8 de noviembre de 2018 17:37
  • Si lo que quieres es quitar todos los datos cargados en tu dataGridView, entonces no se por que se complican tanto (TODOS AQUI al parecer), simplemente utiliza:

    dataGridView1.Rows.Clear();

    eso debera limpiar tu tabla y mantendras la informacion de tu encabezado.

    lunes, 23 de septiembre de 2019 1:31
  • Funcionó. 
    Excelente.!
    lunes, 28 de octubre de 2019 18:02