窗体的最大尺寸,启用最大化 Windows 窗体状态 C#

Max size of a form, enable Maximize Windows form state C#

目前我正在创建一个表单,不允许用户更改表单的宽度或高度,但他们应该能够在需要时最大化表单。 我试过以下方法:

Form myForm = new Form() {
    MaximumSize = new Size(500, 500),
    MinimumSize = new Size(500, 500),
    WindowState = FormWindowState.Maximized
};

问题是当表单显示时它的大小是 width=500height=500,但我希望它最大化。

有没有其他方法可以阻止用户调整高度和宽度?

这很容易解决。窗体有一个名为 SizeChanged 的​​函数。如果你按下最大化按钮,它不会触发,所以可以使用这个功能来解决问题。您只需将 SizeChanged 中的 window 大小设置为 500, 500 即可解决您的问题。可能有更好的方法来解决它,但我认为这个选项是最简单的。

private void Form1_Load(object sender, EventArgs e)
{
    this.Size = new Size(500, 500);
}

private void Form1_SizeChanged(object sender, EventArgs e)
{
    this.Size = new Size(500, 500);
}

这应该可以完成工作 :) 成功!

您想要表单最大化,还是想要 500x500 像素?你不能同时拥有两者。

至于防止他们更改表单大小,您可以将 FormBorderStyle 设置为固定选项之一。这将阻止他们调整它的大小。

来自 MSDN:[https://msdn.microsoft.com/en-us/library/system.windows.forms.form.formborderstyle(v=vs.110).aspx][1]

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