如果应用程序在屏幕保护程序下午餐,MainWindow将保持隐藏状态

时间:2019-02-11 16:59:11

标签: c# wpf windows-10 .net-4.5

我有由Windows Scheduler启动并设置了下一个属性的WPF应用程序:

<Window x:Class="MainWindow"
  Title="Updater" Width="1366" Height="768" WindowStyle="None" 
  ResizeMode="NoResize" WindowStartupLocation="CenterScreen">
</Window>

从屏幕保护程序切换将显示应用程序在任务栏中可见,但在屏幕上不可见。通过每1秒更改标签文本以强制刷新来解决此问题。尝试过其他解决方案,例如InvalidateVisualShowActivatePostMessage SWP_SHOWWINDOW,但无济于事。

编辑:找到的唯一链接是十年前的“ There is no support for updating a Window that is hidden or minimized in the framework presently”。

1 个答案:

答案 0 :(得分:0)

我建议您尝试:尝试使用窗口的Topmost属性。这解决了我有一段时间的问题,该应用程序最初在桌面上不可见-也许它也会为您提供帮助。

所以对我来说,除非执行以下操作,否则我的窗口不会显示:

        window.Show();
        window.Activate();
        window.Topmost = true;
        window.Topmost = false;

我不确定这是否能以任何方式解决您的问题,但我认为建议不会受到伤害。

欢呼 玛丽安