一:form.Show()和form.ShowDialog()的區別
a.
任何窗體(派生於基類Form的類),都可以以兩種方式進行顯示。
//非模式窗體
From qform=new Form();
qform.Show();
//模式窗體
Form qform=new Form();
qform.ShowDialog();
b.
Show方法的調用會立即返回,新窗體顯示的同時Show方法調用語句后面的代碼會得到執行,沒有在當前活動窗體和新窗體間建立任何關系
ShowDialog方法的調用會被阻塞,直到新窗體關閉,ShowDialog方法調用語句后面的代碼才能得到執行。只有當建立的新窗口關閉之后,原有窗體才能重新獲得控制權。即如果不關閉新窗口,將無法對原活動窗 口進行任何操作。
二:新建一個form
例題二:
Form2里有個字段:public bool isload{get;set;}
form1里有個click事件,如下:
form2 f2=new form2;
f2.showDialog();
f2里有個closing事件,
f2.isload=true;
Form2里的isload的值是多少?
結果:isload還是默認值,沒有改變。因為f2繼承了form2的字段,f2.isload=true只是將子窗口的字段置為true,而父窗口的字段根本沒有變化,一定要分清是在哪個窗口里進行操作,分清是哪個窗口的屬性,是不是繼承過來的。
三:MessageBox.Show()的常見用法
a.給消息框加上一個標題
b.根據消息框的選擇,使用if條件判斷,要執行什么操作
b.1(根據消息框的選擇,使用if條件判斷,要執行什么操作)可以加一個圖標
b.2(根據消息框的選擇,使用if條件判斷,要執行什么操作,有一個圖標)有默認的焦點
b.3(根據消息框的選擇,使用if條件判斷,要執行什么操作,有一個圖標,有默認的焦點)按鈕反向顯示
b.4(根據消息框的選擇,使用if條件判斷,要執行什么操作,有一個圖標,有默認的焦點)添加help按鈕
c.