如何在每个表单上维护表单设置,设计和值的同时在表单之间切换? 我正在使用此方法,但每次创建新的默认表单值和新表单时。
主要形式:
private void button2_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
this.Hide();
f2.ShowDialog();
}
第二种形式:
private void button2_Click(object sender, EventArgs e)
{
Main f1 = new Main();
this.Hide();
f1.Show();
}
每次在它们之间切换时,我都需要保存此表单的值。我该怎么做?
答案 0 :(得分:0)
问题:您正在创建现有表单的新实例。表明它正在新创建表单。
解决方案:您需要使用Application.OpenForms[]
重新解读:
private void button2_Click(object sender, EventArgs e)
{
Main f1 = new Main();
this.Hide();
f1.Show();
}
有了这个:
private void button2_Click(object sender, EventArgs e)
{
Form frm = Apllication.OpenForms["Main"];
frm.Show();
}
答案 1 :(得分:0)
从按钮点击处理程序
中删除此声明而是这样做
Form2 f2 = new Form2();
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
f2.ShowDialog();
}
private Main form = new Main();
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
form.Show();
}
答案 2 :(得分:0)
以主要形式
public partial class Form1 : Form
{
Form2 form2;
public Form1()
{
InitializeComponent();
form2 = new Form2(this);
}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
form2.Show();
}
}
以Form2形式
public partial class Form2 : Form
{
Form1 form1;
public Form2(Form1 _form1)
{
InitializeComponent();
form1 = _form1;
}
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
form1.Show();
}
}