2012-08-06 20 views
0

我有一個視圖,我需要顯示一些網格和TabControl。網格上有一列應顯示類似Note(註釋)屬性的內容。由於這個字段可以包含大量的數據,我將有一個帶有TextBox控件的選項卡,該選項卡允許用戶查看/編輯筆記,而網格列將只顯示筆記上的幾個首字母。視圖裏面的視圖和數據同步

我將只發布相關部分:

public classSomeViewModel : ViewModelBase 
{ 
    public SomeViewModel() 
    { 
     TabScreens = New List<ViewModelBase>(); 
     TabScreens.Add(new AnotherViewModel1()); 
     TabScreens.Add(new AnotherViewModel2()); 
    } 

    List<ViewModelBase> TabScreens{get;set;} 
} 

SomeView XAML:

<DataTemplate DataType="{x:Type vm:AnotherViewModel1}"> 
    <vw:AnotherView1 /> 
</DataTemplate> 

<DataTemplate DataType="{x:Type vm:AnotherViewModel2}"> 
    <vw:AnotherView2 /> 
</DataTemplate> 

AnotherView2:

<Grid> 
    <TextBox Text={Binding Note} /> 
</Grid> 

AnotherViewModel2:

public class AnotherViewModel2 
{ 
    public string Note {get;set;} 
} 
} 

因此,View上的TabControl綁定到TabScreens。 DataTemplates確保在加載SomeView時加載AnotherView1和AnotherView2。網格中的每一行都包含不同的註釋。什麼是最簡潔的方式來同步SomeViewModel備註和AnotherViewModel2備註?

回答

0

將2個視圖模型組合爲具有單個備註屬性的主視圖模型。如果沒有必要,不要引入同步需求。

+0

我不確定我的理解。你能否詳述一下你的想法? – Goran 2012-08-06 23:33:33