【问题标题】:WPF Prism - Navigation without views?WPF Prism - 没有视图的导航?
【发布时间】:2017-07-06 11:30:53
【问题描述】:

我有一个 WPF MVVM 应用程序,它使用强类型 DataTemplate 来表示我的视图模型的视图。这些 DataTemplate 位于资源字典中,并自动链接到视图模型 - 标准内容。

我想让 Prism 导航适合我的应用,但导航方法需要视图的 Uri,这不属于这种特殊的 MVVM 风格。

一个区域(在 ContentControl 上)能否仅导航到新的视图模型?

Prism for WPF 是否支持这种无视图实现

谢谢

【问题讨论】:

    标签: wpf prism


    【解决方案1】:

    您可以使用RegisterTypeForNavigation 方法注册视图模型类型以使用唯一名称进行导航,例如在您的引导程序类中:

    Container.RegisterTypeForNavigation<ViewAViewModel>("a");
    

    然后您应该能够使用此名称导航到它:

    regionManager.RequestNavigate("YourRegionName", "a");
    

    视图将照常使用DataTemplates 解析,例如:

    <ContentControl prism:RegionManager.RegionName="YourRegionName">
        <ContentControl.Resources>
            <DataTemplate DataType="{x:Type viewModels:ViewAViewModel}">
                <views:ViewA/>           
            </DataTemplate>
        </ContentControl.Resources>
    </ContentControl>
    

    【讨论】:

      猜你喜欢
      • 2011-09-11
      • 1970-01-01
      • 1970-01-01
      • 2018-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多