保存下一个表单的位置

时间:2012-08-01 00:25:34

标签: c# windows-forms-designer

好吧,所以我正在使用打开新表单的下一个按钮做一些事情,令人讨厌的是,我不想在桌面上弹出新表单。

我正在尝试使用下面的代码将旧表单生成在旧表单的位置上,遗憾的是,无论出于什么原因它都不起作用,它们仍然以与以前相同的方式弹出。是的,我已经注册了这些活动。

Form1中:

System.Drawing.Point LocationPoint = new System.Drawing.Point(200,200);
private void Installer_template_LocationChanged(object sender, EventArgs e)
{
    // Save the window location to the installer arts
    LocationPoint = this.Location;
}
private void NextButton_Click(object sender, EventArgs e)
{
    var NextForm = new Form2(LocationPoint);
    NextForm.Show();
    this.Hide();
}

窗体2

  public Form2(System.Drawing.Point LocationPoint)
    {
        InitializeComponent();
        this.Location = LocationPoint;
    }

代码就是那些行

2 个答案:

答案 0 :(得分:1)

您是否尝试过设置新表单的StartPosition,即

        this.StartPosition = FormStartPosition.Manual;

        this.StartPosition = FormStartPosition.CenterParent;

答案 1 :(得分:0)

好吧我修好了,这是一堆问题。

  1. 错误的属性,必须使用DesktopLocation而不是Location属性

  2. 其次我遇到了一些无法修改的静态成员问题或者错误是什么,我只是使用设置文件来保存我的位置

  3. 完成后,它仍然无效,因为你不能这样做.DesktopLocation =某事,你必须使用this.SetDesktopLocation(X,Y)

  4. 仍然没有用,因为在加载表单时它被其他代码覆盖,所以你不得不使用表格中显示的并在那里运行它。