窗体传值是在学习窗体应用程序时碰到的一类比较常见的问题,现将窗体传值方法做了一点总结,方法如下:
<1>声明全局变量传值:
在Form1中声明全局变量,如下所示:
1 public static string str = "窗体1的值";
通过Form1的button1_Click事件即可将此全局变量传递给Form2,Form1的全局变量str在Form2中可以直接访问,代码如下所示:
1 private void button1_Click(object sender, EventArgs e) 2 { 3 Form2 frm2 = new Form2(); 4 frm2.Show(); 5 }
1 private void Form2_Load(object sender, EventArgs e) 2 { 3 this.label1.Text = Form1.str; 4 }
<2>通过构造函数传值:
重载Form2的构造函数,使其能够接受一个来自Form1的参数,重载代码如下所示:
private string str; public Form2(string s) { InitializeComponent(); this.str = s; }
上面代码中定义的string变量str用来存储从Form1传递进来的参数。
在Form1的button1_Click事件中实例化Form2并给其传递Form1的一个参数,代码如下所示:
private void button1_Click(object sender, EventArgs e) { string s = this