如何关闭用户调整Windows窗体大小的功能?
我让它自己调整大小。
如何关闭用户调整Windows窗体大小的功能?
我让它自己调整大小。
看一下FormBorderStyle属性
form1.FormBorderStyle = FormBorderStyle.FixedSingle;
你可能还想删除最小化和最大化按钮:
form1.MaximizeBox = false;
form1.MinimizeBox = false;
更准确地说,将下面的代码添加到Form类的私有void InitializeComponent()方法中:
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
有一个更有效的答案:在Form_Load中放入以下指令:
this.MinimumSize = new Size(Width, Height);
this.MaximumSize = this.MinimumSize;
另一种方法是改变属性“AutoSize”(设置为True)和“AutosizeMode”(设置为GrowAndShrink)。
这样做的效果是表单自动调整其元素的大小,并且不允许用户更改其大小。
这些答案对我都不起作用,也许是因为我的窗口有一个状态栏。为了解决这个问题,我这样做:
StatusStripObject.SizingGrip = False
这同样适用于StatusBar对象,例如:
StatusBarObject.SizingGrip = False
解释
默认情况下,FormBorderStyle属性具有相当大的值FormBorderStyle。相当规模的分配。这使得窗体可以调整大小。
有7种FormBorderStyle属性值可供使用。
没有一个 FixedSingle Fixed3D FixedDialog 相当大的 FixedToolWindow SizableToolWindow
根据表单的类型,我们可以相应地分配适当的值。 假设您的表单名称为form1。
从下面选择任何一个,使其为固定
FixedSingle, Fixed3D, FixedDialog使窗体不可重新调整大小,分配None也将工作,但在没有控制框的情况下没有意义。
Code
下面的代码片段,使用其中任何一个
固定单
form1.FormBorderStyle = FormBorderStyle.FixedSingle;
Fixed3D
form1.FormBorderStyle = FormBorderStyle.Fixed3D;
固定对话框
form1.FormBorderStyle = FormBorderStyle.FixedDialog;
无[可选]注:没有控制框
form1.FormBorderStyle = FormBorderStyle.None;
或者,以图形方式
我们可以把它画成这样。
确保你选择了你想要固定大小的窗体。然后你会在属性窗口中看到一个名为FormBorderStyle的属性。