检测Windows 8.x中的桌面何时在WPF中捕捉

时间:2015-04-09 22:39:53

标签: wpf windows-8 windows-8.1

我有一个无窗口,无格式的WPF应用程序,可以在桌面上最大化。当桌面被捕捉时,我的应用程序被切断了。同样,当我的应用程序在一个快照桌面中启动时,它会窃取整个监视器的焦点。

我需要更新我的可见元素,以便它们不再被Windows 8.x快照切断。是否有一个事件或API会让我的代码对此更改做出反应?

1 个答案:

答案 0 :(得分:2)

订阅“MainWindow”的SizeChanged事件。每当用户更改大小或由于现代应用程序捕捉而更改大小时,此事件将触发。如果要将宽度和高度设置为静态,则不会触发该事件。

public MainWindow()
{
    InitializeComponent();
    this.SizeChanged += OnSizeChanged;
}

private void OnSizeChanged(object sender, SizeChangedEventArgs     sizeChangedEventArgs)
{
    System.Diagnostics.Debug.WriteLine(sizeChangedEventArgs.NewSize);            
}