Windows runtime 用户控件在向前导航期间释放

Windows runtime 用户控件在向前导航期间释放,windows-runtime,winrt-xaml,win-universal-app,windows-phone-8-emulator,Windows Runtime,Winrt Xaml,Win Universal App,Windows Phone 8 Emulator,我正在构建一个windows phone 8.1应用程序。我的主页上有一些用户控件。由于某些原因,在前向导航过程中会释放用户控件。因此,当我导航回主页时,会再次创建用户控件。我怎样才能避免这种情况 public partial sealed MyUserControl : UserControl { myVM MyViewModel; public MyUserControl() { myVM = new MyViewModel(new Comp

我正在构建一个windows phone 8.1应用程序。我的主页上有一些用户控件。由于某些原因,在前向导航过程中会释放用户控件。因此,当我导航回主页时,会再次创建用户控件。我怎样才能避免这种情况

public partial sealed MyUserControl : UserControl
{
     myVM MyViewModel;
     public MyUserControl()
     {
          myVM = new MyViewModel(new Composites(new DataAccessRest()));
     }
}

如果有人能给我指出正确的方向,我将非常高兴。提前感谢

默认情况下,一旦您导航离开,页面将被丢弃(除非您导航到您已经在的同一页面)。这是8.1 RT应用程序模型与Silverlight不同的地方

框架使用页面的NavigationCacheMode属性为您处理缓存。将其设置为Enabled(启用)或Required(必需),框架将缓存页面,并在您导航到页面时重用它

由于缓存占用大量内存,请小心处理缓存,以免应用程序在后台关闭

另外:帧的默认缓存大小为1。为您的应用程序将其设置为适当的数字。需要NavigationCacheMode的页面不计入缓存大小,并且始终被缓存