簡體   English   中英

UWP-如何保存框架后退和當前頁面?

[英]UWP - How to save frame backstack and current page?

嗨,我有這個層次結構

應用程式(RootFrame)

  • 登錄頁面
  • 主機殼(InnerFrame)
    • 實體列表頁1
    • 實體列表頁面2
  • 實體1(InnerFrame2)的詳細信息頁面
    • 1-1頁
    • 第1-2頁
  • 實體2的詳細信息頁面(InnerFrame3)
    • 2-1頁
    • 2-1頁

而且我想正確處理“后退”按鈕。 在內部框架中的頁面之間導航是可以的,但是例如當我從“具有實體2的列表頁面”轉到“實體2的詳細信息頁面”,然后返回時,我重新創建了MainShell,並且忘記了InnerFrames BackStack並打開了Page(應為“具有實體2“的列表頁

有什么優雅的方法可以解決這個問題嗎? 例如在MainShell上的navigationdFrom發生時保存InnerFrames歷史記錄和當前頁面?

您可以嘗試Prism Framework ,這是一個生命周期管理示例

簡而言之,Prism提供了SessionStateService來管理調用OnAppSuspendedOnAppResumed事件時的視圖還原。

Prism NavigationService還會傳遞NavigatedToEventArgs e, NavigatedFromEventArgs e, Dictionary<string, object> viewModelState參數,並且可以使用此參數在OnNavigatedToOnNavigatedFrom覆蓋您的頁面行為。

我找到了我所需要的。 Frame對象上有SetNavigationState(string)和GetNavigationState()方法。 不管怎么說,還是要謝謝你

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM