2013-02-03 128 views
1

我正在開發一個應用程序,應該有很多的圖形功能,我正在構建一個應用層使用WPF。我想在mvvm結構中構建應用層。幾個viewmodels共享相同的視圖

我建立在一個單獨的大型wpf控件上,負責圖形處理。因爲我開始構建一個負責控制的單視圖模型,由於大量使用命令,綁定和行爲,此視圖模型變得越來越大,包含圖形控件的xaml也越來越多。

我想將視圖模型拆分爲多個視圖模型,負責圖形控件的各個方面。我該如何將xaml分解爲每個視圖模型的視圖,每個視圖模型負責相同控件的自己的綁定,行爲,觸發器等?

回答

1

有幾種方法可以做到這一點也取決於你的ViewModels實現。

這使我想到的第一個想法,你可以以不同的控件給出不同的DataContext,所以你可以做這樣的事情(僞XAML):

<Window> 
    <Grid DataContext="ViewModel1"> 
     <!-- xaml for that view model 1 --> 
    </Grid> 
    <Grid DataContext="ViewModel2"> 
     <!-- xaml for that view model 2 --> 
    </Grid> 
    <Grid DataContext="ViewModel3"> 
     <!-- xaml for that view model 3 --> 
    </Grid> 
</Window> 
+0

basicly我有一個大的控制誰需要幾個數據動態的背景下,這有可能嗎? – AvivEise

相關問題