代码之家  ›  专栏  ›  技术社区  ›  nportelli

如何在没有棱镜的WPF中做区域?

  •  2
  • nportelli  · 技术社区  · 14 年前

    特别是在MVVM Light工具包中?我还没有深入到prism代码中,看看它在WPF用户界面中的区域中做了什么。在mvvm灯光下,消息传递和视图模型定位器似乎可以做类似的事情……可以吗?有人能举例说明你是怎么做到的吗?实际上,我想单击一个按钮,并将两个不同的视图模型加载到UI中。也许更好的解释方法是类似于Outlook的导航窗格功能。

    1 回复  |  直到 14 年前
        1
  •  4
  •   Reed Copsey    14 年前

    在没有任何框架的情况下,这可以在WPF中相当容易地完成。

    只需设置一个 DataTemplate 在应用程序(或窗口/用户控件级别)中,将视图模型映射到要为该视图模型显示的视图。

    你可以用一个 ContentPresenter ,并将其内容绑定到单个属性(可以是类型 object )在视图模型中。当您想将“区域”设置为特定视图时,只需将属性设置为适当的ViewModel,WPF将自动为您连接所有内容。