Di solito, quando una tabella realizzata tramite il controllo GridView consente anche l'ordinamento dei dati, vogliamo anche fornire un feedback visuale all'utente della colonna in base al quale tale ordinamento avviene
Uno dei modi per raggiungere questo risultato, ad esempio, è quello di intercettare l'evento RowDataBound e utilizzarlo per impostare una particolare classe CSS all'intestazione della colonna, in modo che, ad esempio, esso mostri un'icona contenente una freccia orientata nella direzione dell'ordinamento stesso.
La nuova versione della GridView presente in ASP.NET 4.0 rende tutto molto più semplice grazie ad alcune proprietà dal nome estremamente eloquente:
- SortedAscendingHeaderStyle-CssClass e SortedDescendingHeaderStyle-CssClass consentono di preimpostare le classi di CSS da utilizzare sull'intestazione della colonna ordinata, rispettivamente a seconda che esso avvenga in maniera ascendente o discendente;
- SortedAscendingCellStyle-CssClass e SortedDescendingCellStyle-CssClass svolgono la medesima funzione, ma relativamente alle celle appartenenti alla colonna stessa.
- Si tratta di una funzionalità estremamente comoda e concisa. Basta infatti scrivere del markup simile al seguente
<asp:GridView runat="server" AllowSorting="true" AllowPaging="true" id="theGrid" DataSourceID="dataSource" SortedAscendingHeaderStyle-CssClass="h_ascending" SortedDescendingHeaderStyle-CssClass="h_descending" SortedAscendingCellStyle-CssClass="c_sorted" SortedDescendingCellStyle-CssClass="c_sorted" />
affinché si ottenga un risultato simile a quello indicato in figura.

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Applicare un filtro per recuperare alcune issue di GitHub
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Referenziare un @layer più alto in CSS
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Ricevere notifiche sui test con Azure Load Testing
Ordine e importanza per @layer in CSS
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Migliorare la sicurezza dei prompt con Azure AI Studio
Proteggere le risorse Azure con private link e private endpoints
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Documentare i servizi REST con Swagger e OpenAPI con .NET 9