Prism Scoped Region 中的异步导航

Async navigation in Prism Scoped Region

我有一个基于 PRISM 6.1.0 的 WPF 项目 Shell 将 TabControl 公开为 "MainRegion"。 我需要显示几个从数据库加载数据的视图。数据加载过程需要时间,UI 保持冻结状态。 我试过 运行 这个异步过程

await Task.Run(() =>
            {
                RegionManager.RequestNavigate(RegionNames.MainRegion, "FirstView", parameters);
                RegionManager.RequestNavigate(RegionNames.MainRegion, "SecondView", parameters);
                ....
                RegionManager.RequestNavigate(RegionNames.MainRegion, "LastView", parameters);
            });

但什么也没有发生,UI 保持冻结状态,直到最后一个视图被加载,然后才在 TabControl 中显示所有视图...

有什么方法可以异步加载视图吗?

首先导航到您的视图,然后让您的视图异步加载其数据。您可以显示忙碌指示器控件以显示正在后台加载的内容。当数据加载完成后,busy 指示器会隐藏,View 会显示新加载的数据。