Nell'articolo di introduzione all'uso di PRISM per realizzare Windows Store app (https://www.winrtitalia.com/articoli/windows8/XAML-Windows-8.1-WinRT-PRISM.aspx) abbiamo introdotto la logica della classe MvvmAppBase, da cui far ereditare App, per comprenderne il ciclo di startup.
Tra i vari punti di estensibilità di tale classe figura la possibilità di inserire una view come splash screen personalizzata attraverso la proprietà ExtendedSplashScreenFactory.
this.ExtendedSplashScreenFactory = (splashscreen) => new ExtendedSplashScreen(splashscreen);
Tale proprietà deve essere valorizzata nel costruttore di App con un delegato che passa in ingresso il riferimento all'oggetto SplashScreen definto nel manifest, e restituisce l'istanza di una Page che vogliamo usare come custom splash screen.
Durante lo startup, quando questa proprietà non è null, viene invocato il delegato e la Page restituita viene inserita come Content del rootFrame. Al termine dello startup il Content viene definitivamente valorizzato con la view iniziale.
La view che possiamo usare come splash screen custom può essere del tutto personale; poichè l'oggetto SplashScreen definito nel manifest viene passato come parametro possiamo usarlo se vogliamo creare un effetto visivo continuo con la splash screen di base.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Health monitoring con Azure Container App
Ricevere avvisi su metriche dei server Azure Arc
Utilizzare la parola chiave file nel codice C#
Creare applicazioni distribuite con Azure Container Apps e Dapr
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Migrare un repository che contiene large file storage objects in GitHub
Migrare un progetto ASP.NET Core da .NET 6 a .NET 7
Effettuare update massivi con Entity Framework Core 7
Utilizzare l'attributo HTML inert per disabilitare gli eventi
Evitare la command injection in un workflow di GitHub
Ottimizzare la persistenza che coinvolge un solo oggetto con Entity Framework Core 7
Fare automaticamente il merge di una pull request con un workflow di GitHub