我有两种形式:Form1, Form2
在Form1
我有一个textBox
,其中包含一些用户必须输入的数据。
我需要用户在text
中输入的Form1's textBox
。
如何访问Form2
中的内容?
我使用property
但它不起作用,因为用户在运行时输入的文本值。
任何人都可以帮助我吗?
答案 0 :(得分:1)
为form2创建一个接受字符串的构造函数,并在调用new form2时将form1.frm1Textbox.text传递给contructor,然后将其设置为form2.frm2Textbox.text
Form2 form = new Form2(frm1Textbox.text);
在form2构造函数
中public class Form2 : Form
{
public Form2(string text)
{
frm2Textbox.Text = text;
}
}
答案 1 :(得分:1)
Form1 frmOne = new Form1();
string text= frmOne.Textbox1.Text;
也不要忘记将文本框的修饰符更改为public
答案 2 :(得分:0)
创建一个公共函数,只返回文本框的文本。如下所示
public string Get_Form1Text()
{
return textbox1.Text;
}
然后从Form2调用它,您需要文本框的值。
新编辑
首先在Form2中创建一个属性。然后在form1中实现文本框文本更改事件。然后将文本框的值分配给事件中Form2的属性。
在此之后,您必须在Form2中实现属性更改事件。 如果提出该事件,请参阅此Question
答案 3 :(得分:0)
尝试使用静态变量获取值,该变量应在表单2中创建,
private static string form1text;
public static string Form1text
{
get { return form1text; }
set { form1text= value; }
}
///
string variable = form1text;//current value can be accesed
将文本框值分配给Form1中的Form2静态变量,如下所示
Form1.Form1text = textbox1.Text;