即使表单的大小发生变化,如何制作面板中心。使用c#windows应用程序
使用设计器将面板放置在窗体的中心,然后清除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;
我想,这应该照顾大多数情景。
将其Anchor属性设置为None:
this.panel1.Anchor = System.Windows.Forms.AnchorStyles.None;
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