在C#中在运行时更改表单大小

bLA*_*LAZ 13 c# resize

如何在运行时更改窗体大小?

我看过示例,但每个都需要Form.Size属性.这个属性可以设置如下:http://msdn.microsoft.com/en-us/library/25w4thew.aspx#Y456,但我在可视化工具中创建了我的申请表,表单创建如下:

static void Main()
{
    Application.Run(new Form());
}
Run Code Online (Sandbox Code Playgroud)

如何设置该Size属性,然后通过Form.HeightForm.Width方法更改它?

Arr*_*row 33

您不能更改表单的宽度和高度属性,因为它们是只读的.您可以像这样更改表单的大小:

button1_Click(object sender, EventArgs e)
{
    // This will change the Form's Width and Height, respectively.
    this.Size = new Size(420, 200);
}
Run Code Online (Sandbox Code Playgroud)

  • 如果你想在调整大小后重新调整表单只是`this.CenterToScreen();` (2认同)
  • 你能限定这个答案吗?例如,其他依赖项可能会或可能不会阻止其产生任何影响,例如属性“MaximumSize”、“MinimumSize”、“AutoSizeMode”(例如可以设置为“GrowOnly”)、“AutoSize”、“FormBorderStyle”(例如可以设置为“FixedDialog”)和“WindowState”(例如可以设置为“Maximized”)。 (2认同)

Chr*_*isF 10

如果要以编程方式操作表单,最简单的解决方案是保持对它的引用:

static Form myForm;

static void Main()
{
    myForm = new Form();
    Application.Run(myForm);
}
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用它在运行时更改大小(或您想要做的任何其他操作).虽然正如Arrow指出的那样你无法直接设置Width,Height但必须设置Size属性.