Il controllo ContentDialog permette la creazione di finestre modali in Universal Windows Platform, quindi compatibili con app sia su desktop che su mobile.
Come ContentControl può contenere il markup che desideriamo per mostrare messaggi ed oggetti la cui interazione è gestibile da codice; la sua istanza può essere fatta programmaticamente oppure anche dichiarativamente nel markup.
<ContentDialog x:Name="MyContentDialog" Title="Title" PrimaryButtonText="OK" SecondaryButtonText="Cancel"> <StackPanel> <TextBlock Text="TextBlock messaggio della finestra modale" TextWrapping="Wrap" /> </StackPanel> </ContentDialog>
Per far comparire la modale è sufficiente chiamare il metodo ShowAsync.
Come possiamo vedere in figura, ContentDialog dispone di due pulsanti, Primary e Secondary, che vengono mostrati solo se la rispettiva proprietà *Text è valorizzata. Alla loro pressione la modale si chiude, ma è anche possibile intercettare gli eventi di click per aggiungere una logica personalizzata.
Se nel titolo della finestra vogliamo mostrare oggetti più complessi, rispetto al semplice testo, possiamo usare la proprietà TitleTemplate e definire un DataTemplate con i controlli che desideriamo.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare i primary constructor in C#
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Effettuare il binding di date in Blazor
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Workflow di continuous deployment tramite pull request label in GitHub
Sviluppare un'interfaccia utente in React con Tailwind CSS e Preline UI
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Gestire i null nelle reactive form tipizzate di Angular
Utilizzare l'operatore GroupBy come ultima istruzione di una query LINQ in Entity Framework
Usare lo spread operator con i collection initializer in C#
Routing statico e PreRendering in una Blazor Web App