Ho la seguente esempio semplificato:Come associare ai dati all'interno di un DataTemplate di un ContentControl
<Window x:Class="TemplateBinding.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary
Source="pack://application:,,,/TemplateBinding;component/PersonTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Window.Resources>
<Grid>
<ContentControl ContentTemplate="{StaticResource PersonTemplate}" />
</Grid>
</Window>
Con:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<DataTemplate x:Key="PersonTemplate">
<Border Width="100" Height="100" Background="RosyBrown">
<TextBlock Text="{Binding Path=FirstName}" VerticalAlignment="Center" TextAlignment="Center"/>
</Border>
</DataTemplate>
</ResourceDictionary>
come il mio DataTemplate in un file ResourceDictionary separato.
Ho impostato il mio DataContext nel Costruttore della mia finestra principale e l'ho verificato visualizzando semplicemente il primo nome in questo modo: <ContentControl Grid.Row="1" Content="{Binding FirstName}"/>
.
In un altro scenario in cui utilizzo un DataTemplate con un ListBox
, eseguo il binding esattamente nello stesso modo nel mio DataTemplate e funziona correttamente.
So che il DataTemplate funziona tranne il legame perché mostra correttamente il colore dimensioni e lo sfondo.
Cosa sto sbagliando? Come sarebbe la rilegatura nel mio DataTemplate deve guardare?
Avete un link per la documentazione su questo? E 'del tutto risolto il mio problema, ma sono curioso di sapere se ci sono altri trucchi. –