我的页面导航出现问题,当我更改页面时,我回到主页上,我的计时器NiveauTimer
无法正常工作(我的文本框中没有显示)但计时器{{ 1}}运作良好。
DispatcherTimer
答案 0 :(得分:2)
问题是当您从页面导航并返回到页面时,会创建页面的新实例。现有页面实例保留在内存中(因为计时器),但实际看到的页面是页面的新实例,它创建了自己的计时器。
一种解决方案是将NavigationCacheMode="Required"
设置为您的页面,这样当您从页面和页面导航时,它将重用现有实例。
您还可以将Timer变量设为static
并仅创建它们的单个实例。
这导致了最佳解决方案 - 使用包含定时器和其他数据的ViewModel
类,并将内容ViewModels
保存在内存中的导航堆栈上。 MVVM框架可以提供很多帮助,我建议使用MvvmLight,Prism或MvvmCross - 所有这些都将为您处理这个逻辑。