La GridView consente di personalizzare l'ordinamento dei valori semplicemente cliccando sul nome del campo nell'intestazione.
Per associare un comportamento personalizzato a questa azione è necessario impostare la proprietà AllowSorting su true e successivamente specificare un event handler per l'evento di ordinamento.
<asp:GridView ID="AuthorsGrid" runat="server" AllowSorting="True" OnSorting="AuthorsGrid_Sorting" />
Il codice da associare è tutto sommato semplice e consiste nel recuperare il nome della colonna, per poi effettuare la query specificando il nuovo ordinamento:
protected void AuthorsGrid_Sorting(Object sender, GridViewSortEventArgs e)
{
// indico in base a quale campo ordinare
SortGrid(e.SortExpression);
}
private void SortGrid(string sortExpression)
{
// uso l'espressione per comporre la query SQL per il filtro
sql += " ORDER BY " + sortExpression;
// carico gli autori attraverso un DataReader/DataSet/Custom Collection
...
// riassegno la griglia
AuthorsGrid.DataSource = authors;
AuthorsGrid.DataBind();
}Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.


