实例介绍C#多窗口之间传值的两种方法
进行用C#来开发winfrm项目时,不同窗口之间传值有很多种不同的方法,这里只介绍两种比较常用的方法: 项目中有两个窗体,Form1和Form2,要实现的效果是点击Form1中的Button1按钮实现Te
进行用C#来开发winfrm项目时,不同窗口之间传值有很多种不同的方法,这里只介绍两种比较常用的方法:
项目中有两个窗体,Form1和Form2,要实现的效果是点击Form1中的Button1按钮实现TextBox1和TextBox2中的值相加,然后把这个相加的值传递给Form2中的TextBox1,并在TextBox1中显示出这个和值。

方法一:通过为窗体类写属性来传递值 (1),在被传递值的窗体(这里是Form2)类里面写属性 private string str;//定义的私有变量

方法一:通过为窗体类写属性来传递值 (1),在被传递值的窗体(这里是Form2)类里面写属性 private string str;//定义的私有变量
public string STR//为窗体Form2定义的属性
{
get { return str; }//读
set//写
{
str = value;
}
} (2),在Form2中把读到的属性赋给Form2中的TextBox1文本框 private void Form2_Load(object sender, EventArgs e)
{
get { return str; }//读
set//写
{
str = value;
}
} (2),在Form2中把读到的属性赋给Form2中的TextBox1文本框 private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = str;
} (3),在Form1中的Button1的Click点击事件中写如下代码 private void button1_Click(object sender, EventArgs e)
textBox1.Text = str;
} (3),在Form1中的Button1的Click点击事件中写如下代码 private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
int a, b, sum;
if (int.TryParse(textBox1.Text, out a) && int.TryParse(textBox2.Text, out b))
{
sum = a + b;
frm2.STR = sum.ToString();
frm2.ShowDialog();
}
else
{
frm2.STR = "输入的为非数字型字符串";
frm2.ShowDialog();
}
} 大功告成,在你的机子上运行下,是不是成功了?
Form2 frm2 = new Form2();
int a, b, sum;
if (int.TryParse(textBox1.Text, out a) && int.TryParse(textBox2.Text, out b))
{
sum = a + b;
frm2.STR = sum.ToString();
frm2.ShowDialog();
}
else
{
frm2.STR = "输入的为非数字型字符串";
frm2.ShowDialog();
}
} 大功告成,在你的机子上运行下,是不是成功了?
精彩图集
精彩文章