0

我的问题可能听起来很奇怪,但我不知道如何在 2 个窗口窗体之间创建引用(例如创建引用并将其命名为 TheMainForm1)。我从 2 天以来一直在与这个作斗争(是的,我知道...... )我想要做的是隐藏Form1,但直到现在我发现的唯一方法是:

this.Hide();
        Form2 form2 = new Form2();
        form2.Show();

但是上面的代码创建了一个新的 Form1...

请指导我如何创建参考,我正在尝试学习 c#。

非常感谢任何重播!

4

2 回答 2

0

你可以试试这个解决方案:

应该有一个Program.cs包含一个Program类。添加两个静态属性(或字段)并使用它们。

static class Program
{
    internal static Form1 form1;
    internal static Form2 form2;

    [STAThread]
    static void Main()
    {
        Application.EnableVisualStyles();
        Application.SetCompatibleTextRenderingDefault(false);
        form1 = new Form1();
        form2 = new Form2();
        Application.Run(form1);
    }
}

如果你想从 切换Form1Form2,你可以使用这个:

this.Hide();
Program.form2.Show();
于 2012-07-20T10:29:46.880 回答
0

为什么不直接将它传入 Form1 的构造函数并将其存储在成员变量中呢?

public Form1(Form2 form2)
{
  // store in member
  _form2 = form2;
}
于 2012-07-20T10:25:03.000 回答