2013-10-21 44 views
-1

我想知道如何在WPF中为UserControls设置ViewModel。如何将我的视图模型与视图“连接”?

该项目设置如下: - 使用的DataContext

<Window.DataContext> 
    <local:MainViewModel/> 
</Window.DataContext> 

及其相关MainViewModel主窗口,我实例化和访问这个主窗口已经在用户控制设置为

<local:UC x:Name="Sample Control"/>

  • 在我的MainViewModel类中,I有一个UCViewModel类的实例,我想将其用作此用户控件的视图模型,并使用此用户控件中的子元素执行绑定。

这样做的最好方法是什么?我已经在Google上搜索过,但我无法找到明确的答案。让我知道是否需要更多细节。先谢谢你。

+0

你不应该有UCViewModel的实例在MainViewModel。 – Lucas

+0

@Lucas当然这完全是不真实的。 –

+0

这取决于'模式'。也许Lucas使用ViewModel-First模式使用ContentControl + DataTemplate。然后它会是'和' Pellared

回答

2

假设MainViewModel拥有的UCViewModel暴露为属性的实例,那么你可以简单的用户控件的数据上下文绑定到该属性:

<local:UC x:Name="Sample Control" DataContext="{Binding UCViewModelInstanceProp}" /> 
相关问题