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
Recuperare le subissue e il loro stato di completamento in GitHub
Utilizzare Intersect e Except per filtrare set di dati in TSql
Il nuovo controllo Range di Blazor 9
Arricchire l'interfaccia di .NET Aspire
Dallo sviluppo locale ad Azure con .NET Aspire
Abilitare .NET 10 su Azure App Service e Azure Functions
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Integrare un servizio esterno con .NET Aspire
Fornire parametri ad un Web component HTML
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Utilizzare WhenEach per processare i risultati di una lista di task
Potenziare la ricerca su Cosmos DB con Full Text Search
I più letti di oggi
- Effettuare il multi-checkout in linea nelle pipeline di Azure DevOps
- Esaminare documenti XML con namespace utilizzando LINQ to XML
- Sfruttare una CDN con i bundle di ASP.NET
- Alleggerire le applicazioni WPF sfruttando gli oggetti Freezable
- Effetto turnstile su tutte le pagine con il Windows Phone Toolkit
- Inserire le news di Punto Informatico nel proprio sito
- Gli oggetti CallOut di Expression Blend 4.0
- Le DirectInk API nella Universal Windows Platform


