我在Visual Studio 2013中有一个包含两个表单的解决方案。我想当按下Form2中的按钮时,变量flag_fb
被更新,我在Form1中使用它的值。有没有办法做到这一点?感谢。
答案 0 :(得分:1)
Method1:使用参数化构造函数在表单之间传递变量
为Form1
创建一个参数化构造函数,并从Form2调用Form1参数化构造函数:
//form1 code
bool flag_fb =false;
public Form(bool flag_fb)
{
this.flag_fb = flag_fb;
}
从Form1
调用Form2
参数化构造函数,如下所示:
//form2 code
Form1 form1=new Form1(flag_fb);
from1.Show();
方法2:在flag_fb
中将变量public static
创建为Form2
变量,以便可以从Form1
访问它。
//Form2 code
public static bool flag_fb = true;
要从flag_fb variable
访问Form1
,只需使用className,如下所示:
//Form1 code
bool form2flagValue = Form2.flag_fb ;
答案 1 :(得分:1)
这样的事也应该有用。
// Open form2 from form1
using (Form2 form2 = new Form2())
{
if (form2.ShowDialog() == DialogResult.OK)
{
m_myVal = form2.flag_fb;
}
}
您应该确保flag_fb
是Form2
的公共成员变量,并且
例如,当用户单击“确定”时,还要确保将其设置为所需的值。