将dateTimePicker和textbox的信息从form1传输到form2

时间:2014-09-07 05:12:17

标签: c# winforms textbox datetimepicker

好吧所以我正在尝试将我的姓名(文本框)和生日(dateTimePicker)信息传输到Form2。 所以,基本上我有一个名称,生日和btn1的form1,当我点击btn1我去Form2。我在form2中有另一个按钮btn2。 问题:那么当我在Form2中单击我的btn2时,如何显示form1文本框和datetimepicker的值。

    private void button1_Click(object sender, EventArgs e)
    {
        Form2 f2 = new Form2();
        this.Hide();
        f2.Show();

    }

    private void button2_Click_1(object sender, EventArgs e)
    {

    }

3 个答案:

答案 0 :(得分:1)

如果您想从form1移动到form2

Form2 obj = new Form2(textbox1.Text,DateTime.Value);
this.Hide();
Form2.Show();

表格2

public form2()
{
InitializeComponent();
//if you need something
}
string someName="";
DateTime dt;
public form2(string name,Datetime value)
{
InitializeComponent();
someName=name;
dt=value;
}

现在你的someName将具有该值

答案 1 :(得分:1)

快速的方法是确保Form2上的控件是公共的,然后像这样填充它们......

Form2 f2 = new Form2();
f2.ControlName.Text = this.ControlName.Text;
f2.Show();

但是我会把它封装成一个公共函数。

Form2 f2 = new Form2();
f2.Populate(txtValue1.Text, dtDateTime.Value);
f2.Show();

并在Form2中

public void Populate(string Value1, DateTime Value2)
{
   txtValue1.Text = Value1;
   dtValue2.Value = Value2;
}

答案 2 :(得分:1)

  

Form1中

        public Form1()
        {
            InitializeComponent();
            Load += delegate
            {
                var frm2 = new Form2 { DateValue = dateTimePicker1.Value.ToShortDateString() };
                frm2.Show();
            };
        }
  

窗体2

        public string DateValue
        {
            get { return textBox1.Text; }
            set { textBox1.Text = value; }
        }

        public Form2()
        {
            InitializeComponent();
        }