Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何检测Windows 8应用程序进入后台_C#_Events_Windows 8 - Fatal编程技术网

C# 如何检测Windows 8应用程序进入后台

C# 如何检测Windows 8应用程序进入后台,c#,events,windows-8,C#,Events,Windows 8,我的问题很简单,是否有任何事件或方法可以检测我的应用程序何时不再出现在前台-当用户切换到其他应用程序时 我想做的事情是,当用户不使用应用程序时,我想暂停一些功能和活动 激活和暂停的功能不起作用 以下是一个例子: 的活动,因此您不需要暂停这些活动: 当用户将应用程序移到后台时,操作系统会等待几秒钟,以查看用户是否立即切换回应用程序。如果用户未切换回,操作系统将挂起应用程序 如果应用程序已为挂起|挂起事件注册了事件处理程序,则会在应用程序挂起之前调用此事件处理程序。您可以使用事件处理程序将相关应用程

我的问题很简单,是否有任何事件或方法可以检测我的应用程序何时不再出现在前台-当用户切换到其他应用程序时

我想做的事情是,当用户不使用应用程序时,我想暂停一些功能和活动

激活和暂停的功能不起作用

以下是一个例子:

的活动,因此您不需要暂停这些活动:

当用户将应用程序移到后台时,操作系统会等待几秒钟,以查看用户是否立即切换回应用程序。如果用户未切换回,操作系统将挂起应用程序

如果应用程序已为挂起|挂起事件注册了事件处理程序,则会在应用程序挂起之前调用此事件处理程序。您可以使用事件处理程序将相关应用程序和用户数据保存到永久性存储中。我们建议您为此使用应用程序数据API,因为它们保证在应用程序进入挂起状态之前完成


可见性更改事件应足以满足您的需要:

Window.Current.VisibilityChanged += (s, e) => 
{
    if (!e.Visible)
    {
        // Application went to background
    }
    else 
    {
        // Application is FullScreen again
    }
};

onSuspending不能做什么?更清楚地知道你需要什么和你尝试过什么。不正确。当我切换应用程序时,所有计时器都会继续运行。当你的应用程序被挂起时,你认为计时器会继续运行吗?你是如何观察这种行为的?如果我添加一个标签,并在timer tick label.text=i++上更改它的文本;然后我可以在应用程序列表中看到它是如何变化的(显示在我的问题图片上)。而且,当我打开应用程序时,我可以看到label.text比它转到background时大得多。谢谢,这是三分之一。将在2分钟内标记它