c#-WinFrom子窗體嵌入主窗體
阿新 • • 發佈:2019-01-23
示例
新增嵌入按鈕事件
程式碼複用OOP原則
解決多個按鈕快速編寫窗體嵌入 符合面向物件程式設計方法
獨立出開啟窗體的方法:
//開啟窗體方法
private void OpenFrom(Form objFrm)
{
//將當前子窗體設定成非頂級控制元件
objFrm.TopLevel = false;
//設定窗體最大化
objFrm.WindowState = FormWindowState.Maximized;
//去掉窗體邊框
objFrm.FormBorderStyle = FormBorderStyle.None;
//指定當前子窗體顯示的容器
objFrm.Parent = this.panelFrom;
//顯示窗體
objFrm.Show();
}
優化–跳出多個窗體
防止—當用戶多次點選時會跳出多個或者內嵌多個子窗體方法
//關閉已經開啟的窗體方法
private void CloseFrom()
{
foreach (Control item in this.panelFrom.Controls)
{
if(item is Form objControl)
{
objControl.Close();
this.panelFrom.Controls.Remove(item);
}
}
}