多次调用页面构造函数--Windows Phone 8

时间:2014-06-10 16:03:42

标签: windows-phone-8

我在WP8应用程序中有一个页面,每次导航到它时,都会调用构造函数。

据我所知,页面的构造函数在第一次加载页面时只调用一次。我的页面很重,每一个建筑都浪费了时间..

这是我的导航代码,通常一个:

NavigationService.Navigate(new Uri("/Views/Pages/ContentControlNew.xaml", UriKind.Relative));

这是页面的构造函数:

        public ContentControlNew()
    {

        InitializeComponent();

    }

不特别..每次调用构造函数是否正常?如果您需要更多详细信息,请告诉我,因为我不知道该怎么说这个主题。

1 个答案:

答案 0 :(得分:2)

是的,这是正常的,因为无论何时使用NavigationService.Navigate,它总是创建一个新的页面对象并将其(推送)添加到导航堆栈。例如,当你使用GoBack()时,它会将它弹出堆栈并将其销毁,但当它返回到上一页时,它不会调用构造函数,因为它已经在堆栈中而不必重新创建

如果您不想在每次导航时都创建页面,那么您应该查看Windows Phone的导航模型,了解如何解决这个问题。