如何以另一种形式访问textBox文本

时间:2014-03-18 06:12:53

标签: c# winforms

我有两种形式:Form1, Form2

Form1我有一个textBox,其中包含一些用户必须输入的数据。 我需要用户在text中输入的Form1's textBox。 如何访问Form2中的内容?

我使用property但它不起作用,因为用户在运行时输入的文本值。 任何人都可以帮助我吗?

4 个答案:

答案 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;