通过DataTemplate显示UserControl的不同实例

时间:2013-03-31 20:56:28

标签: wpf mvvm datatemplate

<UserControl x:Name="AView" .... />
public class AViewModel { .. }

<UserControl x:Name="ParentView">
  <UserControl.Resources>
    <DataTemplate DataType={x:Type vm:AViewModel}>
      <vw:AView />
    </DataTemplate>
  </UserControl.Resources>

  <Grid.ColumnDefinitions>
    <ColumnDefinition />
    <ColumnDefinition />
  </Grid.ColumnDefinitions>

  <ContentControl Content="{Binding PropertyA}" />
  <ContentControl Content="{Binding PropertyB}" Grid.Column="1" />
</UserControl

public class ParentViewModel
{
    public AViewModel PropertyA {get;set;}
    public AViewModel PropertyB {get;set;}
}

PropertyA和PropertyB保存对AViewModel的不同实例的引用。

问:如何在ContentAtrol中显示绑定到PropertyA和PropertyB的不同的 AView实例?

1 个答案:

答案 0 :(得分:0)

您发布的XAML将在每个AView内创建2个ContentControl个实例。