C# Класс Herald.Common.SuspensionManager

SuspensionManager 捕获全局会话状态以简化应用程序的 进程生命期管理。 请注意会话状态在许多条件下将自动清除, 因此应该只用于存储方便 在会话之间传递,但在应用程序崩溃时应放弃 升级时应丢弃的信息。
Показать файл Открыть проект

Открытые методы

Метод Описание
RegisterFrame ( Frame frame, String sessionStateKey, String sessionBaseKey = null ) : void

注册 Frame 实例以允许将其导航历史记录保存到 SessionState 并从中还原。 如果框架将参与会话状态管理, 则应在创建框架后立即注册。 在 注册时,如果已还原指定键的状态, 则将立即还原导航历史记录。 RestoreAsync 还将还原导航历史记录。

RestoreAsync ( String sessionBaseKey = null ) : System.Threading.Tasks.Task

还原之前保存的 SessionState。 任何 Frame 实例 (已向 RegisterFrame 注册)都还将还原其先前的导航 状态,从而使其活动 Page 可以还原其 状态。

SaveAsync ( ) : System.Threading.Tasks.Task

保存当前 SessionState。 任何 Frame 实例 (已向 RegisterFrame 注册)都还将保留其当前的 导航堆栈,从而使其活动 Page 可以 保存其状态。

SessionStateForFrame ( Frame frame ) : Object>.Dictionary

为与指定的 Frame 相关联的会话状态提供存储。 之前已向 RegisterFrame 注册的框架已自动 保存其会话状态且还原为全局 SessionState 的一部分。 未注册的框架具有 在还原已从导航缓存中丢弃的页面时仍然有用的 导航缓存。

应用程序可能决定依靠 NavigationHelper 管理 特定于页面的状态,而非直接使用框架会话状态。

UnregisterFrame ( Frame frame ) : void

解除之前由 RegisterFrame 注册的 FrameSessionState 的关联。 之前捕获的任何导航状态都将 已移除。

Приватные методы

Метод Описание
RestoreFrameNavigationState ( Frame frame ) : void
SaveFrameNavigationState ( Frame frame ) : void

Описание методов

RegisterFrame() публичный статический метод

注册 Frame 实例以允许将其导航历史记录保存到 SessionState 并从中还原。 如果框架将参与会话状态管理, 则应在创建框架后立即注册。 在 注册时,如果已还原指定键的状态, 则将立即还原导航历史记录。 RestoreAsync 还将还原导航历史记录。
public static RegisterFrame ( Frame frame, String sessionStateKey, String sessionBaseKey = null ) : void
frame Windows.UI.Xaml.Controls.Frame 其导航历史记录应由 ///
sessionStateKey String 的唯一键,用于 /// 存储与导航相关的信息。
sessionBaseKey String 标识会话类型的可选密钥。 /// 这可用于区分多个应用程序启动方案。
Результат void

RestoreAsync() публичный статический метод

还原之前保存的 SessionState。 任何 Frame 实例 (已向 RegisterFrame 注册)都还将还原其先前的导航 状态,从而使其活动 Page 可以还原其 状态。
public static RestoreAsync ( String sessionBaseKey = null ) : System.Threading.Tasks.Task
sessionBaseKey String 标识会话类型的可选密钥。 /// 这可用于区分多个应用程序启动方案。
Результат System.Threading.Tasks.Task

SaveAsync() публичный статический метод

保存当前 SessionState。 任何 Frame 实例 (已向 RegisterFrame 注册)都还将保留其当前的 导航堆栈,从而使其活动 Page 可以 保存其状态。
public static SaveAsync ( ) : System.Threading.Tasks.Task
Результат System.Threading.Tasks.Task

SessionStateForFrame() публичный статический метод

为与指定的 Frame 相关联的会话状态提供存储。 之前已向 RegisterFrame 注册的框架已自动 保存其会话状态且还原为全局 SessionState 的一部分。 未注册的框架具有 在还原已从导航缓存中丢弃的页面时仍然有用的 导航缓存。
应用程序可能决定依靠 NavigationHelper 管理 特定于页面的状态,而非直接使用框架会话状态。
public static SessionStateForFrame ( Frame frame ) : Object>.Dictionary
frame Windows.UI.Xaml.Controls.Frame 需要会话状态的实例。
Результат Object>.Dictionary

UnregisterFrame() публичный статический метод

解除之前由 RegisterFrame 注册的 FrameSessionState 的关联。 之前捕获的任何导航状态都将 已移除。
public static UnregisterFrame ( Frame frame ) : void
frame Windows.UI.Xaml.Controls.Frame 其导航历史记录不应再 /// 托管。
Результат void