.net 多个相同视图模型共享的视图实例

.net 多个相同视图模型共享的视图实例,.net,wpf,mvvm,.net,Wpf,Mvvm,我正在用MVVM设计模式实现一个WPF应用程序。 其思想是在一个工作空间中对多个数据进行不同的表示。 每个工作区一个实体,它是一个选项卡,实际上可以在详细视图或摘要视图中看到 为此,我使用了以下文章: 一切都很好,但当我为一个给定的viewmodel实例化2或3个带有摘要视图的选项卡时,只有一个视图实例化。 所以,如果我在文本框中输入一些文本,每个选项卡中的每个文本框都会被修改。 我不希望这样,因为一个选项卡可能是列表中的另一个实体 视图之间的切换是这样处理的: <DataTemplat

我正在用MVVM设计模式实现一个WPF应用程序。 其思想是在一个工作空间中对多个数据进行不同的表示。 每个工作区一个实体,它是一个选项卡,实际上可以在详细视图或摘要视图中看到

为此,我使用了以下文章:

一切都很好,但当我为一个给定的viewmodel实例化2或3个带有摘要视图的选项卡时,只有一个视图实例化。 所以,如果我在文本框中输入一些文本,每个选项卡中的每个文本框都会被修改。 我不希望这样,因为一个选项卡可能是列表中的另一个实体

视图之间的切换是这样处理的:

<DataTemplate x:Key="CusomterDetailTemplate" DataType="{x:Type vm:CustomerViewModel}">
    <vw:CustomerDetailView />
</DataTemplate>

<DataTemplate x:Key="CustomerListTemplate" DataType="{x:Type vm:CustomerViewModel}">
    <vw:CustomerListView />
</DataTemplate>

<DataTemplate DataType="{x:Type vm:CustomerViewModel}">
    <ContentControl Content="{Binding }">
        <ContentControl.Style>
            <Style TargetType="{x:Type ContentControl}">
                <Setter Property="ContentTemplate" Value="{StaticResource CustomerListTemplate}" />
                <Style.Triggers>
                    <DataTrigger Binding="{Binding View}" Value="Detail">
                        <Setter Property="ContentTemplate" Value="{StaticResource CustomerDetailTemplate}" />
                    </DataTrigger>
                </Style.Triggers>
            </Style>
        </ContentControl.Style>
    </ContentControl>
</DataTemplate>
那不是我想要的。每个标签都应该是独立的。 我想我错过了什么,但我还看不到什么

这就是我请求你帮助的原因


谢谢。

MVVM方法使用一个视图模型到一个视图。如果你坚持这个原则,你会遇到更少的问题。似乎所有的东西都绑定到同一个viewmodel,所以所有的控件都绑定到同一个数据。也许可以考虑使用CuffelVIEW模型集来为每个Tabi做一个CuffelVIEW模型的集合,而不一定能理解。你能详细说明一下吗?谢谢