C# 在窗体之间传递值并将其添加到文本框c中的值#
我正在为学校做一个交易游戏,我发现自己陷入了困境 我有两个表格,我的表格1是我的主表格,里面有我的余额文本框,还有一个文本框,上面写着钱到期了。从该表格中,您可以打开另一张表格(表格2)以获得贷款 在我的表格2(贷款)中,你可以输入你想要得到的金额,当你输入该金额时,它会对该金额产生25%的利息 我想做的是,当你点击提交按钮时,你放入文本框的金额进入你的余额,然后带利息的金额进入欠款文本框 我搞不懂的是如何将这些值从form2传递到form1,以添加到那些文本框中已有的值中 这是当你点击打开贷款表时我得到的C# 在窗体之间传递值并将其添加到文本框c中的值#,c#,C#,我正在为学校做一个交易游戏,我发现自己陷入了困境 我有两个表格,我的表格1是我的主表格,里面有我的余额文本框,还有一个文本框,上面写着钱到期了。从该表格中,您可以打开另一张表格(表格2)以获得贷款 在我的表格2(贷款)中,你可以输入你想要得到的金额,当你输入该金额时,它会对该金额产生25%的利息 我想做的是,当你点击提交按钮时,你放入文本框的金额进入你的余额,然后带利息的金额进入欠款文本框 我搞不懂的是如何将这些值从form2传递到form1,以添加到那些文本框中已有的值中 这是当你点击打开贷款
private void loansToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.ShowDialog();
}
这就是当你尝试提交这些值时我所拥有的,它还没有完成,但我完全被困在如何做到这一点上
private void button1_Click(object sender, EventArgs e)
{
Form1 testform = new Form1();
int tmp;
Int32.TryParse(textBox2.Text, out tmp);
testform.textBox39.Text = tmp.ToString();
this.Close();
}
有人能提出一些简单的建议吗?给Form2一个包含金额的属性。在Form2关闭后(在ShowDialog之后),您可以访问它: 按如下方式访问值:
private void loansToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.ShowDialog();
textBox39.Text = form2.Amount.ToString();
}
在表格2中,您需要public
PassValue
proberty,在button1\u-Click函数中,您必须设置DialogResult=DialogResult。OK
公共部分类表单2:表单
{
公共int PassValue{get;set;}
private void button1_Click(object sender, EventArgs e)
{
int tmp;
Int32.TryParse(textBox2.Text, out tmp);
this.PassValue = tmp;
this.DialogResult = DialogResult.OK;
}
}
在表格1中,你可以使用这个
private void loansToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
if(form2.ShowDialog() == DialogResult.OK)
{
textBox39.Text = form2.PassValue.ToString();
}
}
我希望它能为您工作。您好,您做错了,您看到的
testform
和Form1
是Form1
的两个不同实例。显然,testform.textBox39也不同。要实现这一点,您可以使用以下方法:
表格中的内容1
public delegate void ChangeText(string amountTxt);
public event ChangeText ChangeTextEvent;
private void loansToolStripMenuItem_Click(object sender, EventArgs e)
{
ChangeTextEvent += new ChangeText(Change_Text)
Form2 form2 = new Form2();
form2.ChangeText = ChangeTextEvent;
form2.ShowDialog();
}
public Change_Text(string amountTxt)
{
textBox39.Text = amountTxt;
}
表格中的内容2
public Delegate ChangeText;
private void button1_Click(object sender, EventArgs e)
{
int tmp;
Int32.TryParse(textBox2.Text, out tmp);
ChangeText.DynamicInvoke(tmp.ToString()); // important line
}
可能重复的
public Delegate ChangeText;
private void button1_Click(object sender, EventArgs e)
{
int tmp;
Int32.TryParse(textBox2.Text, out tmp);
ChangeText.DynamicInvoke(tmp.ToString()); // important line
}