如何在C# Windows窗体应用程序中固定表单大小并防止用户更改其大小?

51

我如何在C# Windows Forms 应用程序中固定表单大小,防止用户更改其大小?


2
哦,我明白了。通过更改窗体的FormBorderStyle属性... - odiseh
1
不要忘记标记回答为已接受,如果它对你有用的话... - Pranay Rana
@odiseh 我偶然发现了这个问题,我看到你仍然没有接受答案。请将一个答案标记为已接受 - 我相信在回答中提供了可行的解决方案。 - Breeze
7个回答

84

看这个:

// Define the border style of the form to a dialog box.
form1.FormBorderStyle = FormBorderStyle.FixedDialog;

// Set the MaximizeBox to false to remove the maximize box.
form1.MaximizeBox = false;

// Set the MinimizeBox to false to remove the minimize box.
form1.MinimizeBox = false;

// Set the start position of the form to the center of the screen.
form1.StartPosition = FormStartPosition.CenterScreen;

// Display the form as a modal dialog box.
form1.ShowDialog();

这对我来说是很大的帮助。谢谢。 - Nano HE
2
我认为这并不会阻止您双击标题栏并将其全屏。 - Tizz
@Tizz 我通过设计器更改了上述内容,它起作用了。双击没有最大化它。我正在使用VS-2010。 - prabhakaran
@Tizz 是正确的,双击标题栏仍会最大化窗体。我正在使用 VS 2022 社区版。 - Blue Phoenix

19

尝试进行设置

this.MinimumSize = new Size(140, 480);
this.MaximumSize = new Size(140, 480);

12

最小设置以防止调整大小事件

form1.FormBorderStyle = FormBorderStyle.FixedDialog;
form1.MaximizeBox = false;

10

属性 -> 窗体边框样式 -> 固定单个

如果您找不到“属性”工具,请转到“视图” -> “属性窗口”


4

我相信这不是最好的方法,但你可以将 MinimumSizeMaximimSize 属性设置为相同的值。这样就可以阻止它了。


1
单击“设计”窗口中的表单后,可以在“属性”窗口中进行必要的更改。要调整表单的大小,需要更改“大小”属性的“宽度”和“高度”字段。为了保持表单的尺寸不变,将值“FixedSingle”分配给“FormBorderStyle”属性。

enter image description here

此外,您应该通过编辑窗口样式来防止屏幕放大;MaximizeBox 属性必须设置为 false

enter image description here

当通过属性窗口进行更改后运行表单时,它的大小保持不变。

enter image description here


0
Maximise属性设置为False

“最大化属性”?您是指“MaximizeBox 属性”吗? - Peter Mortensen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接