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

本文关键字:何使所 分辨率 | 更新日期: 2023-09-27 18:32:44

我是初学者。我想问一下,我怎样才能使面板将所有分辨率居中。我有面板,其中包括其他面板及其称为父面板。我试图添加这些东西给设计师

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

但它说:找不到 namescape "点"的类型,所以我使用了帮助,它New point更改为 New System.Drawing.Point 但仍然不起作用:/

我的窗体是全屏的,它的大小不大,所以WindowsState是最大化的,StartPosition是中心屏幕。

你能帮我吗?

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

您不应该将此代码放在设计器中,因为设计器的代码是从构造函数调用的,并且此时窗体还不可见。

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

你的数学不太对。试试这个:

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