【问题标题】:Properly dispose of view and viewmodel using INavigationAware and Prism使用 INavigationAware 和 Prism 正确处理视图和视图模型
【发布时间】:2012-09-25 21:56:08
【问题描述】:

我使用 Prism IRegionManager 在屏幕之间导航:

_regionManager.RequestNavigate( RegionNames.MainContentRegion, uri );

我有一个以上述方式导航到的人员编辑视图,并且我总是希望在选择要编辑的新人员时重新加载此屏幕。为此,我在 INavigationAware 的 IsNavigationTarget 方法中返回 false。我也在使用 mvvm,并且这个 Person Edit View 有一个 PersonEditViewModel。

我担心的是应用程序永远不会处理以前的 PersonEditViewModel。我知道它不会自动处理,因为 IsNavigationTarget 是为所有先前创建的 PersonEditViewModels 调用的。我打了一个断点来告诉。

什么是处理视图和视图模型的好方法?因为我知道我总是会在 IsNavigationTarget 中返回 false 我宁愿处置它们并释放一些空间。我在想也许我可以在 OnNavigatedFrom 方法中做点什么?...

谢谢。

【问题讨论】:

    标签: c# wpf prism


    【解决方案1】:

    您需要查看IRegionMemberLifetimeRegionMemberLifetimeBehaviour

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-07-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-30
      相关资源
      最近更新 更多