如果有人能帮我解决这个问题,我将不胜感激。
我有一个Windows窗体应用程序,它包含三个窗体:form1、form2和form3。当应用程序被激活时,form1会启动。在form1上,有一个按钮可以打开form2并隐藏form1。在form2上也有一个按钮,可以打开form3并隐藏form2。
public partial class Form1 : Form
{
Form2 f2= new Form2();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
f2.Show();
}
}
public partial class Form2 : Form
{
Form3 f3 = new Form3();
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
f3.Show();
}
}
问题在于form3中,我试图访问在运行时在form2中分配值的某些变量。我认为由于我将f2设置为无模式窗体,所以只需使用f2.myvariables就可以访问,但智能提示没有给出f2对象。为什么会这样?我找到了一种方法来声明那些变量为public static,所以我可以通过使用form2.myvariables来访问...这里有另一件让我困惑的事情。既然所有的值都是在运行时分配的,那么静态变量怎么能做到这一点呢?我是C#的新手,我已经做了很多关于此方面的搜索,但似乎没有地方确切地回答我的问题。提前感谢你的帮助!