窗體是winform開發的基礎,需要掌握窗體的創建、屬性、調用和窗體傳值等等。
1、在項目中添加窗體很簡單,在項目上點擊右鍵,選擇添加windows窗體即可為項目添加新的窗體。
2、窗體的屬性設置,右鍵點擊窗體,選擇屬性,VS右側即可看到窗體的屬性,winform所有控件的屬性設置皆可以通過此種方式進行設置。
(1)更改窗體的圖標:在窗體的屬性中有Icon這個屬性,單擊選擇我們要設置的圖片即可。圖片必須是ico文件。可以到EasyICON這個網站上找找,有很多很好的圖標。
(2)隱藏窗體的標題欄:把窗體的屬性FormBorderStyle設為None即可。
FormBorderStyle的屬性值:
Fixed3D:固定的三維邊框
FixedDialog:固定的對話框樣式的粗邊框
FixedSingle:固定的單行邊框
FixedToolWindow:不可調整大小的工具窗口邊框
None:無邊框
Sizable:可調整大小的邊框
SizableToolWindow:可調整大小的工具窗口邊框
(3)控制窗口的顯示位置:StartPosition屬性來實現
CenterParent:窗體在其父窗體中居中
CenterScreen:窗體在當前顯示窗口中居中,其尺寸在窗體大小中指定
Manual:窗體的位置由Location屬性確定
WindowsDefaultBounds:窗體定位在Windows默認位置,邊界由Windows默認決定
WindowsDefaultLocation:窗體定位在Windows默認位置,其尺寸在窗體大小中指定
(4)修改窗體大小:雙擊Size屬性,有Width和Height兩個屬性,分別設置即可。
(5)設置窗體背景圖片:通過BackgroundImage屬性實現
打擊打開有兩種選擇:
選擇本地資源,保存的是圖片的路徑
選擇項目資源文件,將選擇的文件保存到項目資源文件Resource.resx中,開發中最好導入到資源文件中,這樣軟件在打包的時候也可以打包進去。
(6)窗體的顯示和隱藏:
顯示:Form form = new Form(); form.Show();
隱藏:Form form = new Form(); form.Hide();
首先,Show()和Hide()是非靜態方法,所以我們需要創建窗體對象進行調用。
其次,使用Hide(),窗體所占用的資源並沒有從內存中釋放掉,而是繼續存儲在內存中,所以我們可以隨時再調用Show()方法進行顯示隱藏的窗體。
如果我們要關閉當前窗體form.Close()時也關閉所有的隱藏窗體,則:Application.exit();
(7)觸發窗體事件:單擊屬性欄里的閃電圖標就能看到窗體所有的事件。雙擊Click即可創建了窗體的Click事件。
private void Form_Click(object sender,EventArgs e){}
(8)窗體加載事件(Load),創建過程同,一般情況下我們會使用此方法,在窗體load時加載一些需要的初始信息。
private void Form_Load(object sender,EventArgs e){}
(9)窗體關閉事件(FormClosing)
FormClosing事件
在窗體關閉時,FormClosing事件發生。此事件會得到處理。從而釋放與窗體相關的所有資源。
如果取消此事件,則窗體仍然保持打開狀態。
當窗體顯示為模式對話框時,單擊“關閉”會隱藏窗體並將DialogResult屬性設為Cancel。通過在些事件中設置DialogResult屬性可以在用戶單擊右上角關閉按鈕時重寫 DialogResult的值。
FormClosed事件
在用戶或Application類的Close方法或Exit方法關閉窗體后,會發生FormClosed事件。
可以使用此事件釋放窗體的一些資源。還可以使用此事件保存輸入窗體中的一些信息或者更新父窗體。
(10)窗體彈出框
首先,MessageBox.Show()是彈出框的,類似js的alert
其次,這個是使用if語句判斷是否單擊了"是"按鈕:
if(MessageBox("是否查看窗體!","","MessageBoxButton.YesNo,MessageBoxIcon.Information")==DialogResult.OK){}
也可以這樣:
DialogResult dr=MessageBox("是否查看窗體!","","MessageBoxButton.YesNo,MessageBoxIcon.Warning");
dr==DialogResult.YES.......
MessageBox的具體說明,見下文。
