C # - ¿Cómo actualizo DataGridView después de eliminar filas?

En mi código, necesito eliminar filas de DataGridView después de un intervalo recurrente, por lo que llamo a la siguiente función cuando el temporizador expira:

private void removeRows(DataGridView dgv) {

    foreach (DataGridViewRow row in dgv.Rows)
    {
        // if some condition holds
        dgv.Remove(row);                
    }
    dgv.Refresh();

}

Sé que las filas se eliminan con éxito de DataGridView, aunque aún permanecen en la pantalla por cualquier motivo. ¿Algún consejo sobre lo que podría estar haciendo mal?

Respuestas a la pregunta(7)

Su respuesta a la pregunta