如何在C#Windows窗体中的特定位置定位开放表单?

rod*_*ria 19 c# winforms visual-studio-2012

Location表单中的属性设置为0,0(属性窗口).但是,表单不会在指定位置打开.我错过了什么吗?

小智 36

您需要设置StartPosition为手动以将表单设置起始位置设置为LocationProperty中的值.

public Form1()
{
    InitializeComponent();
    this.StartPosition = FormStartPosition.Manual;
    this.Location = new Point(0, 0);
}
Run Code Online (Sandbox Code Playgroud)

Intelisense Summary for FormStartPosition.Manual

FormStartPosition FormStartPosition.Manual

窗体的位置由System.Windows.Forms.Control.Location属性确定.


nit*_*f50 6

默认情况下,开始位置设置为WindowsDefaultLocation,这将导致窗体忽略您正在设置的位置.要轻松强制设置位置,请将StartPosition更改为Manual.

StartPosition属性图片


Ste*_*eve 5

如果您忘记将StartPosition设置为,则将Location设置为 0,0 不会产生任何效果FormStartPosition.Manual

\n\n
\n

此属性使您能够设置窗体在运行时显示时的起始位置。表单\xe2\x80\x99s 的位置可以通过设置Location 属性手动指定\n 或使用Windows 指定的默认位置\n。对于多文档界面 (MDI) 子窗体等窗体,您还可以将窗体放置在屏幕中央或其父窗体的中央。

\n
\n

  • 这看起来像是评论,而不是答案。 (3认同)
  • 我想知道为什么这个答案被否决,而其他相同的答案却被赞成。OP 显然是从设计器窗口设置其属性,我认为只是使用设计器寻找答案。 (2认同)