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
Usare il colore CSS per migliorare lo stile della pagina
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Generare velocemente pagine CRUD in Blazor con QuickGrid
Fornire parametri ad un Web component HTML
Migliorare la sicurezza dei prompt con Azure AI Studio
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Migliorare i tempi di risposta di GPT tramite lo streaming endpoint in ASP.NET Core
Creare una libreria CSS universale: Immagini
Utilizzare il trigger SQL con le Azure Function
Generare una User Delegation SAS in .NET per Azure Blob Storage
Creare agenti facilmente con Azure AI Agent Service
Definire stili a livello di libreria in Angular