如果更改表单的大小,如何制作表单中心。 使用c#windows应用程序
答案 0 :(得分:37)
使用设计器将面板放置在窗体的中心,然后清除Anchor
属性,使其不会锚定到任何边缘。这将在表单调整大小时保持居中,而不会调整面板本身的大小。
如果出于某种原因,您需要将面板放在代码中(取决于在表单加载期间发生的事情),您可以执行以下操作:
// code for initializing the panel and setting
// its size goes here
_thePanel.Location = new Point(
this.ClientSize.Width / 2 - _thePanel.Size.Width / 2,
this.ClientSize.Height / 2 - _thePanel.Size.Height / 2);
_thePanel.Anchor = AnchorStyles.None;
我想这应该照顾大多数情景。
答案 1 :(得分:4)
将其Anchor属性设置为None:
this.panel1.Anchor = System.Windows.Forms.AnchorStyles.None;
答案 2 :(得分:1)
Private Sub Panel1_Paint(sender As Object, e As PaintEventArgs) Handles Panel1.Paint
Panel1.Location = New Point(ClientSize.Width / 2 - Panel1.Size.Width / 2, ClientSize.Height / 2 - Panel1.Size.Height / 2)
Panel1.Anchor = AnchorStyles.None
End Sub