Nello script #7 (https://www.winrtitalia.com/script/7/Convenzioni-Mostrare-Immagini-Specifiche-DPI-App-Windows.aspx) abbiamo visto come l'engine di WinRT possa cercare automaticamente delle specifiche immagini in relazione alla densità dei pixel, al fine di rendere migliore l'aspetto generale delle app.
Oltre all'automatismo, possiamo conoscere la scala dei DPI anche a runtime grazie alla classe statica DisplayProperties (namespace Windows.Graphics.Display) ed in particolare alla proprietà ResolutionScale, la quale è il seguente enumeratore:
public enum ResolutionScale { Invalid = 0, Scale100Percent = 100, Scale140Percent = 140, Scale180Percent = 180 }
Grazie a questo oggetto possiamo creare le nostre logiche in modo molto semplice.
switch (DisplayProperties.ResolutionScale) { case ResolutionScale.Scale100Percent: break; case ResolutionScale.Scale140Percent: break; case ResolutionScale.Scale180Percent: break; default: throw new Exception("Unknown Scaling Factor"); }
DisplayProperties espone inoltre la proprietà LogicalDpi che esprime il valore preciso dei DPI del sistema dell'utente.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Usare lo spread operator con i collection initializer in C#
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Usare il colore CSS per migliorare lo stile della pagina
Migliorare la sicurezza dei prompt con Azure AI Studio
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Persistere la ChatHistory di Semantic Kernel in ASP.NET Core Web API per GPT
Usare le collection expression per inizializzare una lista di oggetti in C#
Creare alias per tipi generici e tuple in C#
Evitare il flickering dei componenti nel prerender di Blazor 8