需求就是要在TabControl的page里添加一個(gè)內(nèi)嵌的窗體为狸。如下圖:
代碼其實(shí)很簡(jiǎn)單:
public void GenerateForm(string form, TabControl sender)
? ? ? ? {
? ? ? ? ? ? Form fm = (Form)Assembly.GetExecutingAssembly().CreateInstance(form);
? ? ? ? ? ? //設(shè)置窗體沒(méi)有邊框 加入到選項(xiàng)卡中
? ? ? ? ? ? fm.FormBorderStyle = FormBorderStyle.None;
? ? ? ? ? ? fm.TopLevel = false;
? ? ? ? ? ? fm.Parent = ((TabControl)sender).SelectedTab;
? ? ? ? ? ? fm.ControlBox = false;
? ? ? ? ? ? fm.Dock = DockStyle.Fill;
? ? ? ? ? ? fm.Show();
? ? ? ? }
但是問(wèn)題就在于舶吗,始終子窗體fm根本不顯示吱抚。如下圖
后來(lái)找了半天bug花枫,檢查了代碼粱玲,發(fā)現(xiàn)是TabControl控件的尺寸設(shè)置的太小了躬翁,真是尷尬山憨。查乒。。
如上圖郁竟,把控件的尺寸拉大一點(diǎn)玛迄,子窗體就露出來(lái)。棚亩。蓖议。