Beren.it

All that you can leave behind

Dynamic Data Entity - Gridview Pager

Customizzare il controllo di paginazione del GridView nei Dynamic Data Entity

Una delle cose più scomode che mi è capitato di utilizzare con i Dynamic Data è il paginatore out of the box. O meglio, diciamo che la configurazione di default mi risultava davvero parecchio scomoda: avere il numero di righe di default visualizzate a 10. Troppo poche, specie se si ha uno schermo ad alta definizione e degli occhi buoni, si rischia di avere perennemente mezza pagina vuota.

Come fare allora? Mi metto a spulciare un pò il codice e mi accorgo che il tutto è assai più semplice di quanto si possa pensare. Infatti la modifica/personalizzazione interessa solamente 2 files:

  • GridViewPager.ascx è il controllo ascx che contiene la dropdown con i valori selezionabili di righe
  • List.aspx è il template di pagina di default che utilizza la gridview che viene visualizzata nelle pagine

La prima modifica in GridViewPager.ascx è opzionale nel senso che si possono cambiare i valori nella dropdown, aggiungerne di nuovi o toglierne a piacere. Il consiglio è quello di lasciare sempre il valore 10 che corrisponde al default della griglia come vedremo tra un pò. Ma in generale anche qui la libertà è massima.

Nel mio caso rimuoverò i valori 5 e 15 ed aggiungerò il 50, ma voi potete ovviamente fare come vi aggrada.
Fatto questo procediamo però con la modifica più importante cioè: dove cambiare il valore di default da quello scomodo 10 al più comodo 20? Semplicissimo: aprite il template di pagina List.aspx individuate il tag del GridView e tra gli attributi metteteci un bel PageSize=20. In questo modo:

Fatto questo con un seplice reload della pagina avrete personalizzato con facilità il numero di righe visualizzate nel paginatore della griglia. Ecco il risultato: