WPF Deactivated和Activated简单使用

本章讲述:Activated获得焦点事件 和 Deactivated失去焦点的事件

Deactivated (public event EventHandler Deactivated;)
命名空间:System.Windows

在应用程序停止作为前台应用程序时发生。
Activated: 获得焦点 (首次打开软件时;由别的软件切换回当前软件时;点击当前软件在任务栏的按钮时)
Deactivated:失去焦点,与Activated正好相反,(Deactivated = de + activated)
下面的示例演示如何检测独立应用程序何时停用和激活。

<Application 
  xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  x:Class="SDKSample.App"
  StartupUri="MainWindow.xaml"
  Activated="App_Activated" 
  Deactivated="App_Deactivated" />
using System;
using System.Windows;

namespace SDKSample
{
    public partial class App : Application
    {
        bool isApplicationActive;

        void App_Activated(object sender, EventArgs e)
        {
            // Application activated
            this.isApplicationActive = true;
        }

        void App_Deactivated(object sender, EventArgs e)
        {
            // Application deactivated
            this.isApplicationActive = false;
        }
    }
}

在下列情况下,窗口将被停用(成为背景窗口):
    用户切换到当前应用程序中的另一个窗口。
    用户使用ALT+TAB或任务管理器切换到另一个应用程序中的窗口。
    用户单击其他应用程序中窗口的任务栏按钮。
需要通过处理停用事件来检测何时停用的窗口。
在窗口第一次被停用后,它可能在其生命周期中多次被重新激活和停用。如果应用程序的行为或状态取决于其激活状态,它可以检查IsActive以确定它处于哪个激活状态。
也可以停用应用程序。

猜你喜欢

转载自blog.csdn.net/BYH371256/article/details/105768041
今日推荐