相关疑难解决方法(0)

延迟加载WPF选项卡内容

我的WPF应用程序被组织为TabControl,每个选项卡包含不同的屏幕.

一个TabItem绑定到需要一点时间才能加载的数据.由于此TabItem表示用户可能很少使用的屏幕,因此我希望在用户选择选项卡之前不加载数据.

我怎样才能做到这一点?

.net wpf

25
推荐指数
3
解决办法
2万
查看次数

Prism:将视图延迟加载到选项卡控件中

我正在使用 Prism 4.1 编写一个复合应用程序,该应用程序使用 aTabControl作为在应用程序的主要模式之间切换的一种方式。我目前可以TabControl通过简单地导航到以该TabControl区域为目标的视图来将视图加载到单独的选项卡中:

在我的Shell.xaml

<Window>
  <Grid>
    <TabControl prism:RegionManager.RegionName="TabRegion" />
  </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

在我Bootstrapper.csInitializeShell()方法中:

regionManager.Regions["TabRegion"].RequestNavigate("FirstTabView");
regionManager.Regions["TabRegion"].RequestNavigate("SecondTabView");
regionManager.Regions["TabRegion"].RequestNavigate("ThirdTabView");
Run Code Online (Sandbox Code Playgroud)

然而,当应用程序启动时,视图和(更重要的是)它们各自的 ViewModel 会立即实例化,而不是在选择视图的选项卡时。有没有办法将 Prism 配置为仅在其选项卡被激活时加载视图?

我尝试在单独的模块中定义视图,并使用InitializationMode.OnDemand参数加载模块,但这似乎没有任何效果;我假设这是因为该RequestNavigate方法足以激活模块。

任何想法将不胜感激!

c# wpf tabcontrol prism

5
推荐指数
0
解决办法
4227
查看次数

标签 统计

wpf ×2

.net ×1

c# ×1

prism ×1

tabcontrol ×1