2013-10-21 75 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}" /> 
相關問題