using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 传值练习
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//1、利用构造函数由父窗体向子窗体传值
private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2(this.textBox1.Text);
f2.Show();
}
//利用方法由子窗体向父窗体传值
public void chuanzhi(string data)
{
this.textBox1.Text = data;
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace 传值练习
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
//1、利用构造函数由父窗体向子窗体传值
public Form2(string name)
{
InitializeComponent();
this.textBox1.Text = name;
}
方法一:可以把form1中的string a 定义为public 然后在form2中对form1中的a变量进行赋值。
方法二:可以创建一个类,在该类中定义一个属性来接收form2中的textbox的值,然后在form1中将这个类中的属性赋给变量a。
以上这两种方法,你可以试试。
form1:
public string a{get;set}
form1()
{
...
form2 f2 = new form2();
f2.FatherForm = this;
f2.Show();
}
form2:
public form1 FatherForm{get;set;}
form2()
{
.....
FatherForm.a = textbox1.Text;
}
1.用委托传值
2.定义一个用来传值的方法;
在load定义一个私有的string byvalue
然后写一个共有方法;
public string Byvalue
{
get{}
set{}
}
get set方法就自己写了,学c#的这应该知道吧,真不行hi我
学习