gpt4 book ai didi

c# - WPF Prism 将 View 加载到区域,不会删除先前的 View

转载 作者:太空宇宙 更新时间:2023-11-03 10:57:13 25 4
gpt4 key购买 nike

我是 WPF Prism 的新手,我的问题是这个。

  1. 我有一个区域,我注册了一个这样的 View

    _container.RegisterType(typeof(Object), typeof(MgpOptions),typeof(MgpOptions).FullName);

    _container.RegisterType(typeof(Object), typeof(SgpOptions), typeof(SgpOptions).FullName);
  2. 然后我像这样导航到它

    _regionManager.Regions[RegionNames.AppBarRegion].NavigationService.RequestNavigate(typeof(MgpOptions).FullName);`
  3. 在总和按钮单击事件中,我像这样导航到 SgOptions View

    _regionManager.Regions[RegionNames.AppBarRegion].RequestNavigate(typeof(SgpOptions).FullName);

我的问题是当第 3 步完成时,两个 View 都出现在该区域中我只想一次显示一个 View 。

最佳答案

考虑以下作为 Prism 区域的工作方式,具体取决于它们所适应的控件:

  • 如果您使用的是 ItemsControl,则您有一个 AllActiveRegion 区域类型,它基本上是一个永远不会停用其 View 的区域,因此,它的所有 View 都将是被视为活跃。在这种情况下,导航到另一个 View 不会停用前一个 View 。

相反,您需要使用 ContentControl 将区域配置为 SingleActiveRegion。这种类型的区域只允许一个 View 同时处于事件状态。因此,在导航前一个 View 时确实会停用

您可以在此处找到更多相关信息 Prism Region Overview部分。

关于c# - WPF Prism 将 View 加载到区域,不会删除先前的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19048898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com