以编程方式最大化窗口并防止用户更改窗口状态

如何以编程方式最大化窗口,使其在达到最大化状态后无法resize(例如,最大化Internet Explorer并查看它)?

我将FormWindowState属性设置为

this.WindowState = FormWindowState.Maximized; this.MaximizedBounds = (x,y); 

但它不起作用。 我该怎么做呢?

我想要最大化的窗口是我的应用程序中的一个窗口。

表单最大化时,请设置其最小大小=最大大小,以便用户无法resize。

  this.WindowState = FormWindowState.Maximized; this.MinimumSize = this.Size; this.MaximumSize = this.Size; 

在你的代码之后,你很接近……

 WindowState = FormWindowState.Maximized; 

然后,将表单的最小/最大大小容量设置为一旦其大小调整后的值。

 MinimumSize = this.Size; MaximumSize = this.Size; 

要在最大化窗口后停止窗口Sizable大小,您需要将FormBorderStyleSizable更改为其中一个固定常量:

 FixedSingle Fixed3D FixedDialog 

从MSDN页面备注部分:

表单的边框样式决定了表单外边缘的显示方式。 除了更改窗体的边框显示外,某些边框样式还会阻止窗体的大小。 例如,FormBorderStyle.FixedDialog边框样式将窗体的边框更改为对话框的边框,并阻止调整窗体的大小。 边框样式也会影响表单的标题栏部分的大小或可用性。

如果您选择Fixed3D ,它将改变表单的外观,如果您希望表单恢复到非最大化并再次resize,则可能需要做一些工作。

将属性WindowState更改为System.Windows.Forms.FormWindowState.Maximized ,在某些情况下,如果旧答案不起作用。

因此窗口将最大化,其他部分在其他答案中。

要以编程方式最大化windowstate使用:

 WindowState = FormWindowState.Maximized; this.MaximizeBox = false;