Form.Show()稍微移动窗体位置

nov*_*ara 2 c# winforms

我有一个主窗体的应用程序,它作为一种框架和主窗体内的一个区域,我打开其他窗体.这些表单永远不能关闭,所以当打开一个新表单时我会使用此代码首次打开它:

frm.WindowState = FormWindowState.Maximized;
frm.BringToFront();
Run Code Online (Sandbox Code Playgroud)

然后如果另一个表单被打开,我需要再次显示它我只是使用:

frm.Show();
Run Code Online (Sandbox Code Playgroud)

问题是当我第一次打开表格时它完美定位并且边框排列很好.当我使用frm.Show()将其恢复时,它会稍微向左和向下移动.有什么线索的原因?

小智 6

您应该在表单属性窗口中将StartPosition属性设置为"manual"

要么

frm.StartPosition = System.Windows.Forms.FormStartPosition.Manual;