UWP Application类解析

每一个C# UWP应用中,必不可少的一个文件就是App.xaml.cs。App类是整个程序的入口,它继承了Application类。在App.xaml.cs中,我们可以通过重写Application类中的一些函数,来自定义程序启动时的行为。

在默认UWP模板中,OnLaunched函数担任了初始化程序窗口的工作。但实际上,一个UWP应用的生命周期中,OnLaunched函数可能被调用任意次(包括0次或者很多次)。所以,在初始化程序窗口的时候,必须考虑重复初始化的问题。新手很容易犯的一个错误是在OnLaunched函数中绑定OnBackRequested函数,这样会导致在某些情况下,按一次后退键后退多个页面,或是在某些情况下后退键无效的问题。

继续阅读“UWP Application类解析”

如何判断UWP应用是否具有焦点

桌面版本Windows中,一个UWP应用只有在被最小化的时候才会引发Suspending事件,在使用了扩展执行(Extended Execution)(参见使用扩展执行最小化运行)的情况下,更是不知什么时候才会引发Suspending事件了。手机系统中,Suspending同样不能代表应用不具有焦点。所以,使用Suspending和Resuming事件判断应用是否具有焦点是不可行的。

继续阅读“如何判断UWP应用是否具有焦点”

那些每个Windows 10应用都应该要有的东西

虽然这是一篇有大量代码的文章,但它绝不是一篇仅供开发者阅读的文章。如果你看不懂代码,那就直接跳过吧!

1、对“返回键”的处理

Windows Phone有物理的返回键。Windows 10 PC上,有应用左上角的小箭头。Windows平板电脑上,有任务栏上的返回键。那么,如果返回键不能达到“返回”的作用,那么用户当然会非常沮丧。对返回键的处理可以参见新的文章:UWP后退功能处理
继续阅读“那些每个Windows 10应用都应该要有的东西”