如何在MVVM Light中为UserControl声明/附加ViewModel

时间:2016-08-16 07:43:51

标签: c# wpf mvvm mvvm-light

我正在使用MVVM Light库开发应用程序(c#,wpf)。 我有一个主窗口,其中ViewModel附加为DataContext="{Binding Main, Source={StaticResource Locator}}"。没关系。 但是在主窗口中我有不同的UserControls。目前使用的是由切换器定义的:

    <DataTemplate DataType="{x:Type model:Type1}">
      <controls:UC1 Content="{Binding}"/>
    </DataTemplate>

问题是如何为UserControl声明ViewModel并将其链接到UC DataContext。如果这将支持设计时演示数据,那将是非常好的。

1 个答案:

答案 0 :(得分:-1)

试试这个

<DataTemplate DataType="{x:Type model:Type1}">
  <controls:UC/>
</DataTemplate>

并添加

<ContentPresenter Content="{Binding ViewModelObj}">
</ContentPresenter>