Contestualmente all'uscita di Visual Studio 2013 è stato rilasciato il Behaviors SDK che aggiunge il supporto ai Behavior per le Windows Store app in XAML.
I Behaviors sono un insieme di classi che permettono la definizione direttamente nel markup di comportamenti e logiche in reazione alle azioni dell'utente o anche tra proprietà ed eventi dei controlli presenti nelle View o ancora tra i loro ViewModel, nel contesto del pattern Model-View-ViewModel.
La definizione di questi comportamenti direttamente nel markup permette di alleggerire i ViewModel (o il codice in generale) da logiche che esulano da processi applicativi in senso stretto e richiederebbero una discreta manutenzione, oltre a rendere il loro riutilizzo più semplice.
Per utilizzare i Behaviors è sufficiente aggiungere la reference alla libreria dal tab Extentions:
Nel markup è necessario aggiungere il namespace xml alle due librerie xmlns:Interactivity="using:Microsoft.Xaml.Interactivity" e
xmlns:Core="using:Microsoft.Xaml.Interactions.Core".
Successivamente possiamo usare uno dei Behavior a disposizione, ad esempio il DataTriggerBehavior:
<Grid x:Name="main"> <Interactivity:Interaction.Behaviors> <Core:DataTriggerBehavior Binding="{Binding ShowMain}" ComparisonCondition="GreaterThanOrEqual" Value="0"> <Core:ChangePropertyAction TargetObject="{Binding ElementName=main}" PropertyName="Visibility"> <Core:ChangePropertyAction.Value> <Visibility>Visible</Visibility> </Core:ChangePropertyAction.Value> </Core:ChangePropertyAction> </Core:DataTriggerBehavior> </Interactivity:Interaction.Behaviors> </Grid>
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Paginare i risultati con QuickGrid in Blazor
Utilizzare Tailwind CSS all'interno di React: installazione
Sfruttare lo stream rendering per le pagine statiche di Blazor 8
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Utilizzare le collection expression in C#
Load test di ASP.NET Core con k6
Routing statico e PreRendering in una Blazor Web App
Limitare le richieste lato server con l'interactive routing di Blazor 8
Miglioramenti nell'accessibilità con Angular CDK
Evitare la script injection nelle GitHub Actions
Sfruttare al massimo i topic space di Event Grid MQTT
Aggiungere interattività lato server in Blazor 8
I più letti di oggi
- Miglioramenti nelle performance di Angular 16
- Ottimizzare le performance delle collection con le classi FrozenSet e FrozenDictionary
- HTML5 con CSS e JavaScript
- Ottimizzazione dei block template in Angular 17
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!