Con Windows 10 è stato introdotto il concetto di DeviceFamily, ovvero un raggruppamento logico di dispositivi accumunati da una serie di caratteristiche hardware.
Questa classificazione tuttavia, non è solo qualcosa di utile al consumatore finale. La DeviceFamily è un potente discriminante che permette a noi sviluppatori di definire delle view XAML specifiche per una determinata famiglia di dispositivi, permettendoci di evitare utilizzi spropositati dei VisualStateTrigger che, seppur potenti e di semplice utilizzo, in alcune circostanze potrebbero non essere abbastanza.
Definizione di View XAML specifiche per una DeviceFamily
I modi in cui possiamo definire delle view XAML specifiche per una DeviceFamily sono sostanzialmente due:
1. Tramite solution folder;
2. Tramite naming convention;
In entrambi i casi vanno rispettate delle naming convention.
Qualora scegliessimo l'approccio indicato al punto uno, ci sarà sufficiente nominare la cartella in questo modo: DeviceFamily-(Mobile|Team|Desktop|IoT).
Il discorso è leggermente diverso qualora scegliessimo l'approccio al punto due, perché in questo caso sarà necessario nominare ogni View XAML dedicata a quella piattaforma nella seguente maniera: ViewName.DeviceFamily-(Mobile|Team|Desktop|IoT).xaml
L'immagine sottostante mostra l'approccio descritto al punto uno.

L'immagine sottostante mostra l'approccio descritto al punto due:

La Universal Windows App presa in esame non fa sostanzialmente nulla e le due view (MainPage.xaml) differiscono solamente nel colore di sfondo e nel testo della label posta al centro dello schermo.
Eseguendo l'applicazione prima su PC e poi nell'emulatore otteniamo questo risultato.

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Aggiungere più autori in un commit di Git
Blazor + .NET 6 = .NET ovunque
Effettuare una chiamata HTTP in Angular usando le promise e RxJs 7
Impostare il contenuto dell'head all'interno di ogni pagina Blazor
Scoprire cosa succede in un layer di un Dockerfile
Modernizzare le applicazioni WPF e Windows Forms con .NET e Windows Apps SDK
Personalizzare la creazione dell'utenze Azure B2C tramite API connector
Modificare una variabile d'ambiente di un deployment di Kubernetes
Effettuare un loop di una GitHub Action
Eseguire manualmente una GitHub Action
Utilizzare il browser per rilevare Javascript e CSS non utilizzati nel codice
Impostare un promemoria per ruotare le chiavi di Azure Storage
I più letti di oggi
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Gestire form con più di un pulsante submit in ASP.NET MVC
- Usare TryUpdateModelAsync per aggiornare le entity nelle action di POST in ASP.NET Core MVC
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!