2011-01-14 7 views
2

Ich habe eine Benutzeroberfläche, die ein Muster von "Vorname/Nachname" anzeigt. Also dachte ich, ich würde die gleiche Vorlage wiederverwenden. Aber ich habe einige Probleme, die die Bindung richtig machen.Wie Inhalte in wpf/mvvm wiederverwenden

Hinweis: -

PrimaryContactDataContext ist nichts anderes als eine Klasse mit einer Eigenschaft "Wert" genannt, die die * INotifyPropertyChanged“Schnittstelle implementiert

<StackPanel>  
     <ContentControl DataContext="{Binding Path=PrimaryContactDataContext.Value,Mode=TwoWay}" ContentTemplate="{StaticResource PersonalDetailsTemplate}" /> 
    </StackPanel> 

// See the Reusable template below 

    <UserControl.Resources> 
     <DataTemplate x:Key="PersonalDetailsTemplate" > 
      <StackPanel> 
       <StackPanel Orientation="Horizontal"> 
        <TextBlock Width="30" Text="Name"></TextBlock> 
        <TextBox Width="110" Text="{Binding LastName}" IsReadOnly="True"></TextBox> 
       </StackPanel> 
       <StackPanel Orientation="Horizontal"> 
        <TextBlock Width="30" Text="Title"></TextBlock> 
        <TextBox Width="110" Text="{Binding firstName}" IsReadOnly="True"></TextBox> 
       </StackPanel>    
      </StackPanel> 
     </DataTemplate> 
    </UserControl.Resources> 
+0

Was ist dein Problem? –

+0

Nachname und Vorname werden nicht angezeigt. obwohl die Variable "PrimaryContactDataContext.value" einen Wert enthält. – Relativity

Antwort

5

Stellen Sie die Content des ContentControl. nicht seine DataContext:

<ContentControl Content="{Binding Path=PrimaryContactDataContext.Value,Mode=TwoWay}" ContentTemplate="{StaticResource PersonalDetailsTemplate}" /> 
+0

Danke Alottttt – Relativity