Molte delle interazioni che usiamo nelle moderne applicazioni mobile sono diventate di uso comune.
Pensiamo al nostro programma di posta elettronica preferito: per cancellare un messaggio è sufficiente una semplice gesture di slide da destra verso sinistra.
Quella che può sembrare un'azione semplice può richiedere tempi di sviluppo non proprio brevi, perché nessun controllo nella UWP dispone di questo comportamento out of the box.
Anche in questo caso,ci viene in aiuto il UWP Community Toolkit con un controllo ad hoc: lo SlidableListItem. Questo controllo è pensato per essere usato all'interno di una DataTemplate per controlli come la ListView.
Di seguito la sintassi delle proprietà che permettono di impostare icona e label per lo swipe destro e sinistro, più l'eventuale colore di sfondo.
<controls:SlidableListItem LeftIcon="Favorite" RightIcon="Delete" LeftLabel="Set Favorite" RightLabel="Delete" LeftBackground="Green" RightBackground="Red" LeftForeground="White" RightForeground="Black" ActivationWidth="100" MouseSlidingEnabled="True" LeftCommand="ToggleFavorite" RightCommandRequested="event_handler"> </controls:SlidableListItem>
Se il controllo viene utilizzato come data template di una ListView e contemporaneamente viene intercettato il Click, lo swipe di default scatenerà questo evento. La proprietà IsPointerReleasedOnSwipingHandled permette se impostata a false di modificare questo comportamento.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Eseguire query per recuperare il padre di un record che sfrutta il tipo HierarchyID in Entity Framework
Aggiungere interattività lato server in Blazor 8
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Esporre i propri servizi applicativi con Semantic Kernel e ASP.NET Web API
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Gestione dei nomi con le regole @layer in CSS
Ottimizzazione dei block template in Angular 17
Utilizzare database e servizi con gli add-on di Container App
Gestire la cancellazione di una richiesta in streaming da Blazor
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core