Das neue Compiled-Data-Binding-Feature von Windows-10-Apps ermöglicht ein typsicheres Data Binding und ist zudem auch noch zur Laufzeit schneller.
Universal-Windows-Apps: DataTemplates mit Compiled Data Binding
Im Vergleich zum klassischen Data Binding reagiert es nicht mehr auf den Data Context, sondern nur noch auf Properties der Code Behind, die zur Kompilierungszeit zur Verfügung stehen. Für den Einsatz von Data Templates ist das natürlich ein Problem. Diese reagieren auf Bindings innerhalb vom Data Context. In Listing 1 sieht man die neue x:DataType-Syntax, die bei diesem Problem aushilft. Somit erkennt der Compiler, dass es sich um ein Compiled Data Binding handelt, und kann ideal das Binding für das Inhaltssteuerelement auflösen.
<ListView ItemsSource="{x:Bind ViewModel.Customers, Mode=OneWay}"> <ListView.ItemTemplate> <DataTemplate x:DataType="local:Customer"> <StackPanel Margin="50"> <TextBlock Text="{x:Bind FirstName}" /> <TextBlock Text="{x:Bind LastName}" /> </StackPanel> </DataTemplate> </ListView.ItemTemplate> </ListView>