Quando si vuole comporre una form, oppure quando ci sono campi variabili, spesso si trasformano campi visibili in nascosti in modo piuttosto brutale: questo perché il sistema offre di default una proprietà Visibility che può assumere solo due valori: visibile e nascosto. Spesso però, questa transizione tra i due stati è troppo veloce (immaginiamoci soprattutto di voler nascondere una immagine di grandi dimensioni) e potrebbe generare un effetto indesiderato all'utente finale.
Grazie al Windows Community Toolkit, ovvero una serie di utility che aiutano gli sviluppatori a realizzare comportamenti complessi, e al suo relativo pacchetto di NuGet, è possibile aggiungere un effetto di Fade a tutti i controlli disponibili sullo XAML:
<Page ... xmlns:interactivity="using:Microsoft.Xaml.Interactivity" xmlns:behaviors="using:Microsoft.Toolkit.Uwp.UI.Animations.Behaviors"/> <Button Content="MyButton"> <interactivity:Interaction.Behaviors> <behaviors:Fade x:Name="FadeBehavior" Value="0.5" Duration="1000" AutomaticallyStart="True" /> </interactivity:Interaction.Behaviors> </Button> </Page>
L'esempio qui sopra dimostra come applicare l'effetto ad un bottone, ma lo si può replicare su qualsiasi altro pezzo di XAML. Eventualmente, è anche possibile gestire l'animazione in modalità asincrona dal code-behind, così da realizzare modalità di scomparsa tramite funzioni matematiche più complesse:
await MyButton.Fade(value: 0.5f, duration: 1000, easingType: EasingType.Default).StartAsync();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Applicare un filtro per recuperare alcune issue di GitHub
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Filtering sulle colonne in una QuickGrid di Blazor
Utilizzare Copilot con Azure Cosmos DB
Gestione degli eventi nei Web component HTML
Conoscere il rendering Server o WebAssembly a runtime in Blazor
Utilizzare gRPC su App Service di Azure
Utilizzare QuickGrid di Blazor con Entity Framework
Utilizzare Container Queries nominali
Utilizzare il metodo IntersectBy per eseguire l'intersection di due liste
Gestire eccezioni nei plugin di Semantic Kernel in ASP.NET Core Web API
Utilizzare i variable font nel CSS
I più letti di oggi
- .NET Conference Italia 2024 - Milano
- Develop and distribute Azure Functions using K8s and CI/CD
- Disponibile la versione finale di Hyper-V: la virtualizzazione per Windows Server 2008
- Speciale Mastering Entity Framework
- Velocity arriva alla CTP3
- Silverlight Summer: un'estate speciale piena di Style per i controlli Silverlight!
- Disponibile la versione beta di Silverlight 4.0
- Mono 0.13: ora anche web services
- .NET Alerts Software Development Kit