【问题标题】:How to use Frame navigation on a SplitView with Prism?如何在带有 Prism 的 SplitView 上使用 Frame 导航?
【发布时间】:2017-09-22 18:31:30
【问题描述】:

我正在处理一个使用 Prism 应用 MVVM 模式的 UWP 项目。我有一个这样的基本框架:

<Frame   x:Name="SplitViewFrame" ></Frame>

有了后面的代码,我们可以轻松地浏览这个框架:

SplitViewFrame.Navigate(typeof(MyPage),null);

但是对于 MVVM,我们必须在 ViewModel 中进行,而我无法管理它。有谁知道如何使用 Prism 在 ViewModel 中导航框架?

【问题讨论】:

    标签: c# mvvm uwp prism


    【解决方案1】:

    Prism 的NavigationService 具有对框架的引用,以便能够进行导航。这是应用程序启动序列期间的injected。但是,您可以创建一个 app shell 而不是默认的单页导航来支持拆分视图/汉堡菜单。

    查看 Windows 示例存储库中的 SplitView sample。在启动期间,CreateShell 方法被覆盖以支持拆分视图。

        protected override UIElement CreateShell(Frame rootFrame)
        {
            var shell = Container.Resolve<AppShell>();
            shell.SetContentFrame(rootFrame);
            return shell;
        }
    

    请注意,您目前无法将默认页面导航和拆分视图结合起来,例如单个 Prism 中的第 3 页NavigationService

    【讨论】:

      猜你喜欢
      • 2020-01-23
      • 1970-01-01
      • 2017-03-25
      • 2015-12-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-08
      相关资源
      最近更新 更多