即使我以这种方式手动编程,也无法设置子窗体的起始位置:
f = new Home_Button_Forms.Home_Mandated_Organization();
f.TopLevel = false;
f.Parent = panel1;
f.WindowState = System.Windows.Forms.FormWindowState.Normal;
f.StartPosition = FormStartPosition.CenterScreen;
f.Show();
它仍然出现在 panel1(父窗体)的左上角。
最佳答案
当你想将一个非顶层的表单移动到它的容器面板的中心时,你可以手动设置表单的 Location
:
var f = new Form2();
f.TopLevel = false;
f.Parent = this.panel1;
f.StartPosition = FormStartPosition.Manual;
f.Location = new Point((this.panel1.Width - f.Width) / 2,
(this.panel1.Height - f.Height) / 2);
f.Show();
关于c# - 非顶级表单的 StartPosition,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36760782/