【问题标题】:How to remove page after back operation?后台操作后如何删除页面?
【发布时间】:2013-11-19 15:12:57
【问题描述】:

在我的应用程序中,我加载了一些数据,使用计时器等。但我意识到当用户按下 Back 按钮或我自己这样做时:

NavigationService.GoBack();

页面的计时器仍在工作。我不会通过以下方式返回此页面:

NavigationService.GoForward();

并且将通过

导航到它
NavigationService.Navigate("...");

所以离开这些计时器,其他加载的数据看起来不太好。

如何删除/处置这些页面及其数据?

【问题讨论】:

    标签: c# xaml windows-phone-7 windows-phone-8 windows-phone


    【解决方案1】:

    您需要停止OnNavigatingFrom 方法内的所有操作

    MSDN OnNavigatingFrom

    类似的东西

    protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
    {
        //Stop all of your timers 
    
        base.OnNavigatingFrom(e);
    
    }
    

    【讨论】:

    • 感谢@AMR。没事儿。所以没有像 dispose 之类的东西吗?
    • 如果您处理对象,那么当您导航回页面时它会中断。试一试。每个计时器都应该有一个处置。如果这对您有用,请不要忘记投票并选择作为答案。
    猜你喜欢
    • 2020-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-12
    • 1970-01-01
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    相关资源
    最近更新 更多