如何使所有分辨率的面板居中

时间:2014-12-02 15:24:46

标签: c# panel

我是初学者。我想问一下如何将Panel放在所有决议中心。我有面板,其中包括其他面板及其称为ParentPanel。我试图向设计师添加这些东西

ParentPanel.Location = new Point(
this.ClientSize.Width / 2 - ParentPanel.Size.Width / 2,
this.ClientSize.Height / 2 - ParentPanel.Size.Height / 2);
ParentPanel.Anchor = AnchorStyles.None;

但它说:名称的类型"指向"无法找到,所以我使用了帮助,它将New point更改为New System.Drawing.Point,但仍然无效:/

我的表单是全屏的,而不是sizebale,因此,WindowsState是Maximazed,StartPosition是CenterScreen。

你能帮我吗?

2 个答案:

答案 0 :(得分:0)

您不应该将此代码放在设计器中,因为设计器的代码是从构造函数中调用的,并且表单在那时尚未显示。

相反,处理SizeChanged(或覆盖Form方法)的OnSizeChanged事件,并设置ParentPanel的位置。

答案 1 :(得分:0)

你的数学不太合适。试试这个:

ParentPanel.Location = new Point(
    (this.ClientSize.Width - ParentPanel.Size.Width) / 2,
    (this.ClientSize.Height - ParentPanel.Size.Height) / 2);
ParentPanel.Anchor = AnchorStyles.None;