在多屏幕环境中最大化窗口而不隐藏/阻止任务栏

这是一个post,每个人都曾问过自己“如何在不阻挡任务栏的情况下在多屏设置中最大化窗口”。

问题似乎是将MaximizeBoxMinimizeBox设置为false并且在多屏幕环境中以编程方式最大化的窗口覆盖整个屏幕,而不仅仅是Screen.WorkingArea

要最大化窗口到工作区域,需要使用MaximizeBoxMinimizeBox属性,如下所示:

// This code should be placed in the Form's ResizeEnd handler MaximizeBox = MinimizeBox = true; // Enable both boxes WindowState = FormWindowState.Maximized; // Set to maximized MaximizeBox = MinimizeBox = false; // Disable both boxes again 

因此,窗口将在屏幕上很好地最大化并且尊重屏幕的工作区域(不阻挡任务栏)。

或者您可以将this.MaximumSize设置为新的大小(screen.primaryscreen.bounds.width + screen.secondaryscreen.bounds.width,screen.primaryscreen.bounds.height)。

PS我是用手机写的,所以我无法检查语法等…还有为什么你把它作为’问题’发布?

我发现使用ResizeEnd事件仍然覆盖了任务栏。 所以改用Load事件; 没有模糊的任务栏。