Una delle caratteristiche che distingue un'applicazione immersiva da una classica, per il desktop, è la presenza dell'Application Bar: si tratta di una "barra" a scomparsa, che mostra i comandi contestuali alla pagina e alle azioni correnti.
Prima di Windows 8.1 non esistevano controlli creati allo scopo: per ricreare l'UI dell'Application Bar si usavano i classici Button, opportunatamente stilizzati.
Adesso abbiamo a disposizione dei controlli creati ad hoc per essere utilizzati: AppBarButton, AppBarToggleButton e AppBarSeparetor.
Una delle caratteristiche più importanti che accomuna AppBarButton e AppBarToggleButton è la possibilità di settare l'icona visualizzata semplicemente impostando la proprietà Icon, del tipo IconElement e che comprende le seguenti opzioni:
- FontIcon: è un'icona basata sui glyph dipendenti dalla font family.
- BitmapIcon: è un'icona basata su di una bitmap, tipicamente una PNG.
- PathIcon: è un'icona basata su di un Path vettoriale.
- SymbolIcon: è un'icona basta su di un set di glyph, appartenenti al font Segoe UI Symbol.
Eccone un esempio:
<AppBarButton Label="BitmapIcon" Click="AppBarButton_Click"> <AppBarButton.Icon> <BitmapIcon UriSource="ms-appx:///Assets/MyIcon.png"/> </AppBarButton.Icon> </AppBarButton>
L'esempio precedente mostra un AppBarButton che utilizza una BitampIcon. Il codice per impostare l'icona di un AppBarToggleButton sarà del tutto analogo. Questi controlli dispongono di due modalità di visualizzazione, normale e compatta, ottenibile rispettivamente impostando la proprietà IsCompact a false o true; se impostata a true, il testo posto sotto il bottone verrà nascosto e i margini ridotti.
Il testo che appare sotto ogni bottone è controllato dalla proprietà Label, senza la necessità di applicare uno style custom.
Infine. è possibile aggiungere un separatore tra bottoni con il controllo AppBarSeparetor, che, molto semplicemente, rappresenta una linea utile per separare funzioni logicamente non collegate tra loro.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare Model as a Service su Microsoft Azure
Reactive form tipizzati con modellazione del FormBuilder in Angular
Migliorare la sicurezza dei prompt con Azure AI Studio
Evitare il flickering dei componenti nel prerender di Blazor 8
Generare file PDF da Blazor WebAssembly con iText
Potenziare Azure AI Search con la ricerca vettoriale
Hosting di componenti WebAssembly in un'applicazione Blazor static
Elencare le container images installate in un cluster di Kubernetes
Implementare il throttling in ASP.NET Core
Utilizzare la session affinity con Azure Container Apps
Ottenere il contenuto di una cartella FTP con la libreria FluentFTP
Specificare il versioning nel path degli URL in ASP.NET Web API