0

我遇到了一个问题。我有一个带有进度条的加载页面。它是非交互式的,它只显示加载数据的进度。加载数据后 - 它导航到 MenuPage。

如果用户在加载过程中最小化应用程序,有时会在 BackStack 中添加一个幻像损坏的条目。

问题:如果这个损坏的条目在 backstack- NavigationService.RemoveBackEntry()throwsNullReferenceException中。

问题:我的目标是当用户按下后从第二页退出应用程序。我能以某种方式做到这一点而不从后台删除项目并抛出异常吗?

在此处输入图像描述

4

1 回答 1

-2

简而言之,没有。您不能直接退出应用程序,这很糟糕。但是,您可以通过处理良好的异常来做到这一点。

private class QuitException : Exception { }

public static void Quit()
{
    throw new QuitException();
}

private void Application_UnhandledException(object sender, 
ApplicationUnhandledExceptionEventArgs e)
{
    if (e.ExceptionObject is QuitException)
        return;

    if (System.Diagnostics.Debugger.IsAttached)
    {
        System.Diagnostics.Debugger.Break();
    }
}

资源:

http://www.imaginativeuniversal.com/blog/post/2010/08/22/How-to-Quit-a-WP7-Silverlight-Application.aspx

于 2012-08-01T15:32:57.310 回答