我们如何在C#的文本框中将值从一个表单发送到另一个表单

时间:2014-04-17 07:59:22

标签: textbox

我正在使用C#开发Windows应用程序。

我的要求是在第一种形式我有多个文本框,如姓名,身份证,患者等..如果我按ID搜索,姓名和患者信息将显示在form1中,或者如果我按名称搜索,id和患者信息将显示。它是以我的第一种形式工作..现在我有第二种形式,其中只有一个文本框,应该假设显示我输入的值以第一种形式搜索。 (即假设我使用id搜索信息。那么id应该以第二种形式显示文本框。或者如果我使用名称搜索信息。那么名称应该显示在第二种形式的文本框中。)

请帮忙!我正在搜索它过去3天但没有得到怎么做。

谢谢。

3 个答案:

答案 0 :(得分:0)

试试这个

Session["VALUE"] = TextBox1.Text;
TextBox2.Text = Session["VALUE"].ToString();

答案 1 :(得分:0)

您需要转移对象:

第二个表单构造函数:

private Form _parentForm;
public Form2(Form form) {
    _parentForm= form;
}

第一次表格致电第二表格

var mySecondForm = new Form2(this);
mySecondForm.Show();

从第二表格访问

您可以通过这种方式从ParentForm访问所有可见的属性/字段/方法

_parentForm.MyTextbox.Text = "Foo";

也许你想拥有第一种形式的财产:

public TextBox MyTextBox {
    get {
        return _myTextBox;
    }
    set {
        _myTexBox = myTextBox;
    }
}

确定MyTextboxpublic

答案 2 :(得分:0)

您可以通过在要引入值的表单中使用自定义构造函数和全局变量来执行此操作。

            public class YourReceivingForm:Form
            {

             private string GlobalVariable;
            public YourReceivingForm(string Text)
            {
            IntializeComponenet();
            GlobaleVariable=Text;

            }

            private void F_Invoice_Load(object sender, EventArgs e)
            {
               YourTextBox.Text = GlobalVariable;
            }

现在,您发送值的表单将在您想要的任何事件上都有类似的代码

 YourReceivingForm fm = new YourReceivingForm(YourSendingTextBox.Text);
 fm.Show();