2012-06-29 73 views
11

Tengo un winform con DataGridView precargado sobre él ... Quiero eliminar filas de datagridview al seleccionar o resaltar las filas y hacer clic sobre el botón ...¿Cómo eliminar filas de DataGridView?

También quiero borrar todas las columnas ....

Actualmente he usado

foreach (DataGridViewRow dgvr in dataGridView2.Rows) 
{ 
    if (dgvr.Selected == true) 
    { 
     dataGridView2.Rows.Remove(dgvr); 
    } 
} 

pero es una excepción que "filas o no comprometidos" o algo .... sería apreciable si alguien tiene alguna sugerencia mejor ....

Respuesta

23

Si tiene habilitado AllowUserToAddRows en su DataGridView, puede estar borrando accidentalmente la fila vacía en la parte inferior de DataView, que es un marcador de posición para la siguiente fila creada por el usuario. Intente deshabilitar esta opción si no es necesario; de lo contrario, intente utilizar un código como este:

foreach (DataGridViewRow row in dataGridView1.SelectedRows) 
{ 
    if(!row.IsNewRow) 
     dataGridView1.Rows.Remove(row); 
} 
Cuestiones relacionadas