阻止用户调整窗口/表单大小

用户可以更改表单大小。 我没有找到不允许用户更改表单大小的表单属性。

FormBorderStyle设置为另一个值,如FixedSingleFixedDialog

FormBorderStyle更改为FixedDialogFixedSingleFixed3D 。 此外,如果您不希望它们最大化表单,请将“ Maximize设置为“假”。

有一些解决方法:

  1. 将最大大小属性设置为您喜欢的值。 如果您不希望缩小应用程序窗口,则设置最小大小属性。 如果您希望应用程序具有与设计时间完全相同的大小,则将最大大小和最小大小都设置为窗口大小。 (从设计器设置最大尺寸或最小尺寸后,除非以编程方式再次重新设置最大尺寸和最小尺寸,否则无法以编程方式调整窗口大小)

  2. 将FormBorderStyle设置为FixedSingle或FixedDialog。 对于未经训练的眼睛来说,外观上的差异并不明显,但我从经验中发现的一个显着差异是,当你将其设为FixedSingle时,你仍然可以通过编程方式改变大小。 使用FixedDialog是不可能的。 这对FixedSingle属性来说是一个巨大的优势。 (如果你想在使用FixedDialog之后以编程方式更改窗口的大小,那么你必须首先以编程方式更改FormBorderStyle,这会在运行应用程序时产生轻微的闪烁效果)。

所以简单地去找FixedSingle。 有意义的是,请执行以下操作:

一个。 将box属性设置为false。

湾 将SizeGripStyle设置为Hide。

将BorderStyle更改为“固定”样式之一并删除最大化按钮。

将FormBorderStyle更改为Fixed * 。

表单属性窗口设置:
1. FormBorderStyle – > FixedSingle。
2. MaximizeBox – > False。

将最小和最大大小设置为相同的值。

表单具有MinimumSize和MaximumSize属性,您可以设置它们来控制它。 如果要保留标准表单边框,可以使用此方法。

您可以将边框样式更改为:

BorderStyle – fixedToolWindow

但是如果你需要这些function,你将失去最大化和最小化按钮,需要自定义按钮。

只需为表单添加这两行C#代码(在InitializeComponent()函数内):

 this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; this.ImeMode = System.Windows.Forms.ImeMode.NoControl; 

使用带有.NET 4.6.1的Visual Studio 2017进行测试