怎样关闭子窗口的同时刷新父窗口
父窗口   form1 
 子窗口   form2   
 打开子窗口 
 private   Button1_Click(object   sender,   EventArgs   e) 
                         { 
                                     form2   sonform   =   new   form2(); 
                                     form2.ShowDialog(); 
                         } 
 关闭子窗口 
 private   Button2_Click(object   sender,   EventArgs   e) 
                         { 
                                     this.close() 
                         }   
 怎么改可以实现   关闭子窗口的同时刷新父窗口   
 我想得到父窗口的引用该怎么做啊??   
 我是初学者阿,请指教
------解决方案--------------------form1: 
         private void button2_Click(object sender, EventArgs e) 
         { 
             Form2 frm2 = new Form2(); 
             frm2.Owner = this; 
             frm2.Show(); 
         } 
 form2: 
         private void Form2_FormClosed(object sender, FormClosedEventArgs e) 
         { 
             this.Owner.Invalidate(); 
         }
------解决方案--------------------第一种,主动方式 
 private Button1_Click(object sender, EventArgs e) 
         { 
             form2 sonform = new form2(); 
             form2.ShowDialog(); 
 //直接调用你自己的刷新函数,因为showdialog是停止在上一行的,你关闭后才运行到此行 
         } 
 关闭子窗口 
 private Button2_Click(object sender, EventArgs e) 
         { 
             this.close() 
         }     
 另一种,被动方式 
 主窗体接收子窗体的关闭事件   
  Form2 f = new Form2(); 
  f.FormClosing += new FormClosingEventHandler(f_FormClosing);     
         void f_FormClosing(object sender, FormClosingEventArgs e) 
         { 
             throw new Exception( "The method or operation is not implemented. "); 
         }