是否在应用程序开头加载了所有页面?还是只有在我驶向它们时才加载?当我离开页面时,该页面的资源是否发布了?还是我可以控制它?
页面是一个对象,当您要导航到它们时正在初始化。导航意味着创建一个新的页面对象并将其传递到框架的内容。
调用框架时,系统会自动生成您指定的类型的新页面对象。有一个名为Inavigationaware的界面,该界面主要控制导航和导航事件。每当您导航到页面时,都会调用navigatedto事件处理程序。每当您从页面导航时,都会拨打处理程序。还有从事件中进行的navigatingto和navigating trom navigating,这些事件将触发到这2个。
您应该在Onnavigated From方法中解开任何事件处理程序和回调,以防止内存泄漏。如果您有任何从背景线程运行的线程,请不要忘记也取消它们。当您远离在UI线程上运行线程的页面时,您的导航将排队并在UI操作完成后发生。
您应该阅读应用程序生命周期管理MSDN页面,以获取有关生命周期操作如何影响页面对象的更多信息。