MVVM多视图与Prism中的ViewModel相同

时间:2011-09-14 10:59:03

标签: wpf mvvm unity-container prism viewmodel

我对使用相同视图模型类型的多个用户控件视图有疑问。我似乎无法为我的困惑找到具体的答案,但这是非常具有推测性的。

我有。

    <StackPanel Orientation="Vertical">

        <TextBlock Text="Signature Summary" FontSize="14" FontWeight="Bold" TextAlignment="Center" Height="30"/>

        <my:ParameterFileSummaryView DataContext="{Binding ParamterFile1ViewModel}"/>

        <my:ParameterFileSummaryView DataContext="{Binding ParamterFile2ViewModel}"/>

        <my:ParameterFileSummaryView DataContext="{Binding ParamterFile3ViewModel}"/>

        <my:ParameterFileSummaryView DataContext="{Binding ParamterFile4ViewModel}"/>

        <my:ParameterFileSummaryView DataContext="{Binding ParamterFile5ViewModel}"/>

    </StackPanel>

堆栈面板是主视图中的容器,它具有用于Prism / Unity IoC体系结构的依赖属性视图模型datacontext。

因此,这些通过另一个接口将这些单独视图的datacontect绑定到主视图接口的属性。

这一切似乎都运行正常,并且ParameterFileSummaryView中的元素绑定很好地绑定到设置的值,例如第一个,ParamterFile1ViewModel。

这正是我想要的。但是对于cource来说,这些ViewModel是在主窗口的ViewModel中构建的,而不是在Unity容器之外......这一切都让人觉得有点hacky。有没有更清洁的方式来实现我正在尝试的东西。

道歉,如果它真的是一个没有实际意义的问题...但我看不到树木的木材。如果问题混淆我将添加编辑,请耐心等待我不是专家:)。

1 个答案:

答案 0 :(得分:0)

我自己回答问题,并且@Jon检查了理智......很抱歉,因为你的问题混乱了。