我已经在这个项目上工作了大约一个小时了,我被卡住了。我有4个表格,但只有最后3个是相关的。在表格2中,我使用:
this.Visible = false;
Form3 Form3 = new Form3();
Form3.Show();
创建并显示表单3。 Form3还有一个空文本框,我想将该信息传输到Form4中的标签。在表格3中,我使用与表格2中相同的鳕鱼制作表格3。
我尝试了几件事并在论坛上搜索,但似乎没有任何作用......
lblN2.Text = Form3.txtf.Text;
我想将用户在Form3中的文本框(txtf)中写入的文本传输到Form4中的空标签(lblN2)。
帮助将不胜感激!
答案 0 :(得分:1)
根据您的信息,我认为您希望将form2的值发送到form3,您可以修改构造函数(作为解决方案)将form2值发送到form3。这是一个例子。
表格2:
this.Visible = false;
Form3 frm = new Form3(value-you-want-to-send);
frm.Show();
在Form3中,你应该让构造函数接受一个参数来从Form2 AS中获取值:
public void Form3(value-you-want-to-receive)
{
//set the label text to the string received
}
答案 1 :(得分:1)
尝试这样的事情(Form3类中的代码):
Form4 frm4 = new Form4();
frm4.lblN2.Text = this.txtf.Text;
frm4.Show();
替代方法是修改Form4中的构造函数方法以接受字符串参数并按如下方式调用它:
Form4 frm4 = new Form4(this.txtf.Text);
frm4.Show();
答案 2 :(得分:1)
您应该在语句中指定Form4,例如:
Form4 _frm4 = new Form4();
_frm4.lblN2.Text = Form3.txtf.Text
答案 3 :(得分:0)
如果你想将一些东西转移到form4然后你可以在form4上创建一个公共变量,那么你可以在form3上做这样的事情:
this.hide();
form4 form4 = new form4();
form4.variable = textbox1.text;
form4.show();
然后在form4_load上你可以:
textbox2.text = variable;
答案 4 :(得分:0)
表格3 ......
private void button1_Click(object sender, EventArgs e)
{
Form4 frm = new Form4(textBox1.Text);
frm.Show();
}
表格4 ......
public partial class Form4 : Form
{
private string _valueFromOtherForm;
public Form4()
{
InitializeComponent();
}
public Form4(string valuePassed)
{
InitializeComponent();
_valueFromOtherForm = valuePassed;
}
private void Form4_Load(object sender, EventArgs e)
{
label1.Text = _valueFromOtherForm;
}
}
}
答案 5 :(得分:0)
在Form4
中,编写如下方法:
public void ReceiveTextFromAnotherForm(string theText)
{
//set the label text to the string received
}
在Form3
中,执行以下操作:
Form4 theForm4 = new Form4();
theForm4.ReceiveTextFromAnotherForm(this.txtf.Text);
theForm4.Show();