我有一个有三页的应用程序,因此,在我的主要xaml“容器”中,我有一个框架,用于显示我想要显示的三个页面中的哪一个。所以,当我在框架中切换页面时,我这样做
MyFrame.Navigate(typeof(page1));
我的问题是,如果我的用户多次导航和导航,每次导航到第1页时都会调用上面的内容。这会实例化page1的几个实例(每次导航到它时一次)吗?
我实际上希望在应用程序的生命周期中只打开一个实例,当导航发生时,只返回已创建的实例。换句话说,有一个方法或类来做到这一点(显然需要更多地考虑或清理,只是把它放在一起为这篇文章)
private page1 _page1;
private Page ReturnPageForNavigation()
{
if(_page1 == null)
{
_page1 = new page1();
return _page1;
}
return _page1;
}
那么,在我的Frame中进行导航的最佳方法是什么?我应该只做typeof并且每次都返回新的吗?我应该实现跟踪和返回一个实例的东西吗?
谢谢!