【发布时间】:2018-10-26 23:21:28
【问题描述】:
如何自动调整 c# windows 窗体的高度和宽度?那么当我最大化表单时,它的所有组件都适合屏幕吗?
【问题讨论】:
如何自动调整 c# windows 窗体的高度和宽度?那么当我最大化表单时,它的所有组件都适合屏幕吗?
【问题讨论】:
使用每个控件的Anchor 属性,将其捕捉到包含表单的任一端。那么当您调整表单大小时,这些锚定控件也会调整大小。
【讨论】:
除了 Anchor 之外,还有一个 dock 属性。这将通过停靠到控件所在容器的一侧或多侧来自动调整控件的大小,如果控件停靠到所有侧,那么它将被“最大化”以填充其容器。
【讨论】:
您可以设置表单的最小和最大尺寸,如下所示
this.MinimumSize = new Size(140, 480);
this.MaximumSize = new Size(140, 480);
你也可以像下面这样使用它
private void Form1_Load(object sender, EventArgs e)
{
int h = Screen.PrimaryScreen.WorkingArea.Height;
int w = Screen.PrimaryScreen.WorkingArea.Width;
this.ClientSize = new Size(w, h);
}
它可以为您工作的另一种方式是
Rectangle screen = Screen.PrimaryScreen.WorkingArea;
int w = Width >= screen.Width ? screen.Width : (screen.Width + Width) / 2;
int h = Height >= screen.Height ? screen.Height : (screen.Height + Height) / 2;
this.Location = new Point((screen.Width - w) / 2, (screen.Height - h) / 2);
this.Size = new Size(w, h);
【讨论】: