繁体   English   中英

什么时候在 UWP 中加载页面?

[英]When are the pages loaded in UWP?

是否在应用程序开始时加载了所有页面? 还是仅在我导航时才加载它们? 当我离开一个页面时,该页面的资源是否被释放? 或者有什么办法可以控制吗?

Page 是一个对象,当您要导航到它们时正在初始化。 导航意味着创建一个新的 Page 对象并将其传递给 Frame 的内容。

当您调用 Frame.Navigate 时,系统会自动生成您指定类型的新 Page 对象。 有一个名为 INavigationAware 的接口,它主要控制 NavigatedTo 和 NavigatedFrom 事件。 每当您导航到页面时,都会调用 OnNavigatedTo 事件处理程序。 每当您从页面导航时,都会调用 OnNavigatedFrom 处理程序。 还有 OnNavigatingTo 和 OnNavigatingFrom 事件会在这两个事件之前触发。

您应该在 OnNavigatedFrom 方法中取消注册任何事件处理程序和回调,以防止不必要的内存泄漏。 如果您有任何从后台线程运行的线程,也不要忘记取消它们。 当您离开在 UI 线程上运行线程的页面时,您的导航将排队并在 UI 操作完成后发生。

您应该阅读应用程序生命周期管理 MSDN 页面以获取有关生命周期操作如何影响页面对象的更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM