La markup extension x:Bind è una valida alternativa a {Binding} nelle applicazioni della Universal Windows Platform perché, proprio a partire da Windows 10, è possibile avere binding compilati che sono decisamente più performanti rispetto al classico binding. Non tutte le funzionalità di x:Bind sono identiche a quelle supportate da {Binding} proprio perché nel primo caso i binding vengono elaborati a compile-time, mentre nell'altro vengono elaborati a runtime.
Per ottenere delle prestazioni ottimali, di default il binding viene effettuato in modalità OneTime (al contrario di OneWay di {Binding}) e non è possibile specificare una modalità alternativa. A partire dal Fall Creators Update però, è stata aggiunta una proprietà DefaultBindMode che ha lo scopo di modificare il BindingMode per una porzione specifica di codice che include un intero ramo di XAML.
<Grid x:DefaultBindMode="TwoWay"> <TextBox x:Text="{x:Bind MyProperty}" /> </Grid>
Come mostrato nell'esempio qui sopra, la griglia contenitore ha cambiato la modalità di binding impostandola a TwoWay e, di conseguenza, tutti gli oggetti in essa contenuti, come la TextBox, avranno il binding applicato in quella modalità, a meno ché il sia dichiarato espressamente il contrario.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Utilizzare un service principal per accedere a Azure Container Registry
Migrare una service connection a workload identity federation in Azure DevOps
Come migrare da una form non tipizzata a una form tipizzata in Angular
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Implementare il throttling in ASP.NET Core
Sfruttare i KeyedService in un'applicazione Blazor in .NET 8
Miglioramenti nell'accessibilità con Angular CDK
Utilizzare QuickGrid di Blazor con Entity Framework
Gestire undefined e partial nelle reactive forms di Angular
Potenziare Azure AI Search con la ricerca vettoriale
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Eseguire attività con Azure Container Jobs