首页 > 解决方案 > WindowStartupLocation 开始最小化时被忽略

问题描述

(建议的副本处理以 开头的窗口WindowState.Normal。)

如果一个应用程序有

WindowStartupLocation = WindowStartupLocation.CenterScreen;

并从

WindowState = WindowState.Minimized;

然后才有

WindowState = WindowState.Normal;

窗口显示在屏幕中央。

除了手动计算屏幕的中心之外,有没有办法解决这个问题?

标签: c#.netwpf

解决方案


一种选择是启动窗口中心屏幕,但在它实际显示在屏幕上之前将其最小化,如下所示:

WindowStartupLocation = WindowStartupLocation.CenterScreen;
SourceInitialized += (s, e) => WindowState = WindowState.Minimized;

SourceInitialized事件在设置窗口位置之后但在显示之前引发。


推荐阅读