如何在wpf/mvvm中重用内容

Rel*_*ity 2 wpf mvvm

我有一个显示"名字/姓氏"模式的UI.所以我想我会重用相同的模板.但我面临一些问题,正确的约束力.

注意:-

PrimaryContactDataContext只是一个类,具有名为"value"的属性,它实现了*INotifyPropertyChanged"接口.

    <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>
Run Code Online (Sandbox Code Playgroud)

Tho*_*que 5

设置ContentContentControl,而不是它的DataContext:

<ContentControl Content="{Binding Path=PrimaryContactDataContext.Value,Mode=TwoWay}"  ContentTemplate="{StaticResource PersonalDetailsTemplate}"  />
Run Code Online (Sandbox Code Playgroud)