///
/// Initializes the singleton application object. This is the first line of authored code
/// executed, and as such is the logical equivalent of main() or WinMain().
/// 初始化单个应用程序对象,代码执行的第一行,逻辑上等同于main() 或者 WinMain()
///
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
}OnLaunched():调用应用程序时,通常由终端用户发起。其他入口点将用于在应用程序启动时打开一个特定的文件,以显示搜索结果,等等。
///
/// Invoked when the application is launched normally by the end user. Other entry points
/// will be used when the application is launched to open a specific file, to display
/// search results, and so forth.
/// 调用应用程序时,通常由终端用户发起。其他入口点
/// 将用于在应用程序启动时打开一个特定的文件,以显示
/// 搜索结果,等等。
///
///
/// Details about the launch request and process.
/// 关于运行过程或者请求的详细,msdn:当应用程序启动时,提供事件信息
///
protected override void OnLaunched(LaunchActivatedEventArgs args)
{
// Do not repeat app initialization when already running, just ensure that
// the window is active
//不要重复初始化已运行的应用程序,只确定窗口是活动的即可
//ApplicationExecutionState指定应用程序的当前状态
//正在运行
if (args.PreviousExecutionState == ApplicationExecutionState.Running)
{
Window.Current.Activate();
return;
}
//应用程序挂起后终止其运行
if (args.PreviousExecutionState == ApplicationExecutionState.Terminated)
{
//TODO: Load state from previously suspended application
//从先前暂停的应用程序加载状态
}
// Create a Frame to act navigation context and navigate to the first page
//创建一个框架,执行上下文导航,并导航到第一页
var rootFrame = new Frame();
if (!rootFrame.Navigate(typeof(MainPage)))
{
throw new Exception("Failed to create initial page");
}
// Place the frame in the current Window and ensure that it is active
//在当前窗口中的框架,并确保它是积极的
Window.Current.Content = rootFrame;
Window.Current.Activate();
}
OnSuspending(object sender, SuspendingEventArgs e):应用程序被挂起时执行,不管是应用程序被终止,还是仍然保存在内存中,都将保存应用程序的状态
///
/// Invoked when application execution is being suspended. Application state is saved
/// without knowing whether the application will be terminated or resumed with the contents
/// of memory still intact.
/// 应用程序被挂起时执行,不管是应用程序被终止,还是仍然保存在内存中,都将保存应用程序的状态
///
/// The source of the suspend request.请求挂起源
/// Details about the suspend request.
private void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
//TODO: Save application state and stop any background activity
//保存应用程序状态,并且停止后台的任何程序
deferral.Complete();
} 再看App.xaml
ResourceDictionary,它含有对位于 Common 文件夹中的 StandardStyles.xamlResourceDictionary 的引用。StandardStyles.xaml 提供了一组默认样式,它们为应用提供 Windows 8 外观和感觉。