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

Bas*_*uro 5 .net c# winforms

对于每个曾经问过自己"如何在不阻挡任务栏的情况下在多屏幕设置中最大化窗口"的人来说,这是一个帖子.

问题似乎是将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
Run Code Online (Sandbox Code Playgroud)

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

Pat*_*yer 1

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

PS 我是用手机写的,所以我无法检查语法等...而且你为什么将此作为“问题”发布?