天天看點

關于MessageBox消息框彈出時會将主窗體隐藏問題的解決方法

1,若是直接在主窗體中使用MessageBox.Show()方法,第一個參數用this就行。

2,若是不在主窗體中使用,則需要将主窗體做為參數傳過去

     2.1  可以在構造函數中傳遞        Main frm ;

                                                       public OtherForm(Main main)       {frm = main  }  //   Main 為主窗體名稱

   2.2   通過循環找到主窗體           Control owner = new Control();    //通過傳給MessageBox.Show 的參數     寫成全局變量

                                                       owner = this;

                                                     while (owner.Parent != null)

                                                    {

                                                          owner = owner.Parent;

                                                    } 

                                                    MessageBox.Show(owner,....);

3,重繪或繼承Form 控件的MessageBoxEx  可以在構造函數中傳主窗體,也可以在  Show方法中傳主窗體