Nei precedenti script abbiamo visto come impostare alcuni aspetti del LongListSelector. Oggi vedremo come organizzare la fonte dati per poter visualizzare e utilizzare la jumplist
Per prima cosa, è necessario che la nostra fonte dati non sia "flat", ma organizzata a gruppi. Per fare questo come prima cosa è necessario creare una classe che definisca un gruppo.
public class Group<T> : List<T> { public Group(string name, IEnumerable<T> items): base(items) { this.Title = name; } public string Title { get; set; } }
La nostra classe Group<T> estende il tipo List<T>, aggiungendovi la proprietà Title del tipo string, che ci servirà come label del gruppo.
Infine, per creare una lista di gruppi è sufficiente definire una istanza di List
const string letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; private static List<Group<City>> GetItemGroups(IEnumerable<City> itemList) { var _groupList = new List<Group<City>>(); foreach (var letter in letters) { var _group = new Group<City>(letter.ToString(), itemList.Where(c=> c.Name.StartsWith(letter.ToString())).OrderBy(c=> c.Name)); _groupList.Add(_group); } }
Nel frammento di codice precedente creiamo una collezione di gruppi in ordine alfabetico.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare una qualunque lista per i parametri di tipo params in C#
Ottenere un token di accesso per una GitHub App
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API
Ordine e importanza per @layer in CSS
La gestione della riconnessione al server di Blazor in .NET 9
Gestione file Javascript in Blazor con .NET 9
Gestione ciclo di vita in .NET Aspire
Scrivere selettori CSS più semplici ed efficienti con :is()
Integrare un servizio esterno con .NET Aspire
Utilizzare l'espressione if inline in una pipeline di Azure DevOps
Recuperare gli audit log in Azure DevOps
Gestione CSS in Blazor con .NET 9
I più letti di oggi
- Segnala questa pagina ad un amico
- SQL Server 2005 in beta 2
- Gestione CSS in Blazor con .NET 9
- Documentare i servizi REST con Swagger e OpenAPI con .NET 9
- Gestione ciclo di vita in .NET Aspire
- Calcolare il resto di una divisione
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!