Как повторно использовать содержимое в wpf / mvvm - PullRequest
2 голосов
/ 14 января 2011

У меня есть пользовательский интерфейс, который отображает шаблон «имя / фамилия».Поэтому я подумал, что буду использовать тот же шаблон.Но я сталкиваюсь с некоторыми проблемами, связанными с правильным связыванием.

Примечание: -

PrimaryContactDataContext - это не что иное, как класс со свойством с именемзначение "которое реализует интерфейс * 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>

1 Ответ

5 голосов
/ 14 января 2011

Установите Content для ContentControl, а не для DataContext:

<ContentControl Content="{Binding Path=PrimaryContactDataContext.Value,Mode=TwoWay}"  ContentTemplate="{StaticResource PersonalDetailsTemplate}"  />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...