//Form1中的窗体btn1事件
private  void btn1_click(object sender, EventArgs e)
{
    Form2 frm2=new Form2();
     frm2.Owner=this;
     frm2.ShowDialog();
}//托盘图标的点击事件 ,在Form2打开后,当我点击托盘图标时,Form1最小化,再次还原时,Form2消失,为什么
private void PnotifyIcon_MouseClick(object sender, MouseEventArgs e)
{  //已显示则让它显示在最上面   
            if (this.WindowState == FormWindowState.Maximized)
            {
                MinForm(this.OwnedForms);
                // this.WindowState = FormWindowState.Minimized;
            }
            else
            {
                MaxForm(this.OwnedForms);
                //this.WindowState = FormWindowState.Maximized;
            }
}
//递归窗体最小化 
private void MinForm(System.Windows .Forms .Form[] frms)
        {
            this.WindowState = FormWindowState.Minimized;
            foreach (System.Windows.Forms.Form frm in frms)
            {
                frm.WindowState = FormWindowState.Minimized;
                if (frm.OwnedForms.Length > 0)
                    MinForm(frm.OwnedForms);
            }
            
        }//递归窗体最大化
        private void MaxForm(System.Windows.Forms.Form[] frms)
        {
            this.WindowState = FormWindowState.Maximized;
            foreach (System.Windows.Forms.Form frm in frms)
            {
                frm.WindowState = FormWindowState.Maximized;
                if (frm.OwnedForms.Length > 0)
                    MaxForm(frm.OwnedForms);
            }
         
        }