日期:2014-05-18  浏览次数:20835 次

c#窗体程序开发的问题
我想让form2窗体上的textbox的内容等于form1窗体上的两个textbox内容的运算结果
但是我只想让form2窗体显示一次,然后改变form1的textbox里的数据通过刷新form2达到
form2的textbox内容刷新,应该怎么写代码啊 最好是有代码 
嘿嘿…… 高分悬赏喔

------解决方案--------------------
用委托去刷新,http://blog.csdn.net/yja886/article/details/5992775

------解决方案--------------------
我是新手,这是我的方法...相当麻烦...
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2(this);
textBox3.Text = Convert.ToString(Convert.ToInt32(textBox1.Text) + Convert.ToInt32(textBox2.Text));
f2.Show();
timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
textBox3.Text = Convert.ToString(Convert.ToInt32(textBox1.Text) + Convert.ToInt32(textBox2.Text));
}
}
}

public partial class Form2 : Form
{
public Form2(Form1 f1)
{
InitializeComponent();
f = f1;
}
private Form1 f;
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = f.textBox3.Text;
}

private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = f.textBox3.Text;
}
}
}
------解决方案--------------------
探讨

我是新手,这是我的方法...相当麻烦...
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object send……

------解决方案--------------------
用事件或委托来解决。
------解决方案--------------------
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
Form2 frm = new Form2();
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = "0";
textBox2.Text = "0";

frm.Owner = this;
frm.Show();
}

private void textBox2_TextChanged(object sender, EventArgs e)
{
frm.textBox1.Text=(Convert.ToInt32(textBox1.Text)
+Convert.ToInt32(textBox2.Text)).ToString();
}
}


 public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
public System.Windows.Forms.TextBox textBox1;
}
------解决方案--------------------
通过事件响应可以解决