Velocizzare caricamento nella datagridview

Durante lo sviluppo di software gestionali in ambiente .Net, ci si imbatte immancabilmente nell’utilizzo del controllo DataGridView.

Tuttavia in fase di utilizzo del software, quando gli archivi si fanno grandi (e lo sviluppatore non tiene mai in conto questo aspetto in fase di progettazione), si notano rallentamenti del software. Ebbene, in alcuni casi il rallentamento può essere dato proprio dal caricamento delle righe all’interno della DataGridView (piuttosto che .

Invece di utilizzare il seguente metodo per aggiungere le righe alla datagrid:

dataGrid.Rows.Add(parameter1, parameter2, parameter3);

sostituite il codice con:

DataGridViewRow row = new DataGridViewRow();
row.Cells.Add(new DataGridViewTextBoxCell());
row.Cells.Add(new DataGridViewTextBoxCell());
row.Cells.Add(new DataGridViewTextBoxCell());
row.SetValues(paramter1, parameter2, parameter3);

dataGrid.Rows.Add(row);

Ovviamente le celle della riga devono corrispondere con il tipo di colonna utilizzato dalla DataGridView, quindi rispettivamente DataGridViewComboboxCell e DataGridViewCheckboxCell per le colonne particolari.

L’incremento della velocità in alcuni casi può portare da un tempo di caricamento di 6 secondi ad un tempo di 2 secondi.