La charm dei Settings è un importante punto di integrazione tra il sistema operativo e le Windows Store app perchè permette all'utente di raggiungere le impostazioni di ciascuna app con la stessa modalità, con una user experience omogenea e semplice.
In app WinRT realizzate con PRISM l'integrazione con la charm è già predisposta nella classe MvvmAppBase, la classe base dell'entry point App. In essa, nel metodo di ingresso InitializeFrameAsync ci si registra all'evento CommandsRequested appunto della charm:
SettingsPane.GetForCurrentView().CommandsRequested += OnCommandsRequested;
Il metodo gestore dell'evento fa i controlli del caso e richiama il metodo virtual GetSettingsCommands, metodo che deve restituire la collezione di SettingsCommand che vogliamo mostrare nel panel.
Di questo metodo possiamo fare l'override nella nostra classe App e inserire i SettingsCommand di cui abbiamo bisogno.
protected override IList<SettingsCommand> GetSettingsCommands() { return new List<SettingsCommand>() { new SettingsCommand(Guid.NewGuid().ToString(), "PrivacyPolicy (esempio)", async (c) => await Launcher.LaunchUriAsync(new Uri("https://www.winrtitalia.com"))) }; }
Nello snipped di esempio possiamo vedere un SettingsCommand che naviga ad una pagina di un sito web, come potrebbe essere la pagina che descrive le policy di gestione dei dati personali.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Evitare (o ridurre) il repo-jacking sulle GitHub Actions
Ottenere il contenuto di una cartella FTP con la libreria FluentFTP
Sfruttare al massimo i topic space di Event Grid MQTT
Effettuare il binding di date in Blazor
Accesso sicuro ai secrets attraverso i file in Azure Container Apps
Come migrare da una form non tipizzata a una form tipizzata in Angular
Creazione di componenti personalizzati in React.js con Tailwind CSS
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Modificare i metadati nell'head dell'HTML di una Blazor Web App
Disabilitare automaticamente un workflow di GitHub
Utilizzare Tailwind CSS all'interno di React: installazione
Gestire errori funzionali tramite exception in ASP.NET Core Web API
I più letti di oggi
- I tutorials, percorsi guidati per tutti
- Costruire applicazioni cross-plaftorm con Visual Studio 2013 e Xamarin
- Creare semplici grafici a barre con ASP
- rilasciato #mono 2.8.1: bug fix importanti, anche di security: http://u.aspitalia.com/o5
- Mappare una relazione uno a molti con Entity Framework Code First
- Dichiarare tutte le proprietà di un record usando solo il costruttore in C#
- Gestire la cancellazione di una richiesta in streaming da Blazor
- Fragment Caching con dipendenza da altri controls
- grazie a tutti per aver seguito #aspilive! tutto il materiale è già online e le registrazioni saranno pubblicate nei prossimi giorni su => https://aspit.co/BlazorConf-20
- Modificare i metadati nell'head dell'HTML di una Blazor Web App