Uno degli aspetti da tenere in considerazione con le applicazioni Windows Phone è che i temi di sistema sono due, uno chiaro e l'altro scuro. Se optiamo per tenere la nostra applicazione con il tema scelto dall'utente (per dare la sensazione che l'app si integri con il sistema), è necessario prestare attenzione al fatto che le immagini vanno generate per entrambe le versioni: con colore di riempimento bianco per il tema scuro e, viceversa, con colore snero per il tema chiaro.
Nel già citato Coding4FunToolkit, disponibile come package NuGet, è disponibile un converter chiamato ThemedImageConverter, che può essere registrato comodamente in app.xaml, così da essere disponibile in tutte le pagine:
<Application ... xmlns:c4f="clr-namespace:Coding4Fun.Phone.Controls.Converters;assembly=Coding4Fun.Phone.Controls"> <Application.Resources> <c4fControls:ThemedImageConverter x:Key="ThemedImageConverter"/> ... </Application.Resources> </Application>
A questo punto, sarà sufficiente un codice come questo per poter utilizzare il converter:
<Image Source="{Binding Converter={StaticResource ThemedImageConverter}, ConverterParameter={StaticResource PhoneBackgroundColor} }" DataContext="/MyProject;component/Images/{0}/ApplicationBar.Cancel.pn" />
L'effetto sarà quello di andare a cercare, nella directory /Images/Light o /Images/Dark, l'immagine giusta per il tema in uso.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Configurare policy CORS in Azure Container Apps
Supportare lo HierarchyID di Sql Server in Entity Framework 8
Gestire i null nelle reactive form tipizzate di Angular
Usare il colore CSS per migliorare lo stile della pagina
Generare velocemente pagine CRUD in Blazor con QuickGrid
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Utilizzare la versione generica di EntityTypeConfiguration in Entity Framework Core
Utilizzare l'operatore GroupBy come ultima istruzione di una query LINQ in Entity Framework
Eseguire attività con Azure Container Jobs
Miglioramenti nell'accessibilità con Angular CDK
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Eseguire una GroupBy per entity in Entity Framework