WinForm学习第一帖----如何传递变量
Form1:   textBox1   button1(打开窗体2)      button2(退出) 
             Form2      textBox1   button1   
 如何在点击Form2的按钮时,使文本框中的值在Form1的文本框中显示,同时关闭Form2。
------解决方案--------------------设置form2.owern=form1 
 然后操作form2.Owner.文本框........
------解决方案--------------------Form1:button1_click 
 { 
 Form2 frm=new Form2(textBox1); 
 frm2.Show(); 
 }   
 Form2: 
 private TextBox _txtbox; 
 public Form2(TextBox txtbox) 
 { 
 _txtbox=txtbox; 
 } 
 button1_click 
 { 
 _txtbox.Text=textBox1.Text; 
 } 
------解决方案--------------------为什么不直接调用form2的实例呢?
------解决方案--------------------属性   
 回调
------解决方案--------------------form2加一个公用属性
------解决方案--------------------Form1中代码: 
 这样创建Form2 
 Form f = new Form2(); 
 f.OnOk = ShowMessage;   
 增加方法 
 private void ShowMessage(string messgae) 
 {   
     if(this.InvokeRequired) 
         this.Invoke(new ShowMessageDelegate(ShowMessage),message); 
     else 
         this.textBox1.Text = message; 
 }     
 增加代理 private delegate void ShowMessageDelegate(string message);   
 Form2中代码: 
 private ShowMessageDelegate showmessage; 
 public evnet ShowMessageDelegate OnOK 
 { 
     add{showmessage+=value;} 
     remove{showmessage-=value;} 
 }   
 在按钮的事件中 
 if(showmessage!=null) 
     showmessage(this.textBox.Text);