저는 C# 2005를 사용하여 Windows 응용 프로그램을 만듭니다. Menustrip 및TabPage 제거
TabControl 들어있는 MDIForm (frmMainMenu) 있습니다. 내 ChildForm은 frmPurchaseEntry입니다. 사용자가 특정 메뉴 옵션을 클릭하면 새 TabPage가 만들어지고
하위 폼이 TabPage 내에 표시됩니다.
나는 MDIForm (frmMainMenu)의 MenuClick 이벤트에 다음 코드를 사용하고 있습니다 :
frmPurchaseEntry PurchaseEntry = new frmPurchaseEntry();
PurchaseEntry.MdiParent = this;
PurchaseEntry.TabCtrl = tabControl1;
PurchaseEntry.TopLevel = false;
PurchaseEntry.Visible = true;
PurchaseEntry.FormBorderStyle = FormBorderStyle.None;
PurchaseEntry.Dock = DockStyle.Fill;
TabPage tpPurchaseEntry = new TabPage();
tpPurchaseEntry.Parent = tabControl1;
tpPurchaseEntry.Text = PurchaseEntry.Text;
tpPurchaseEntry.Controls.Add(PurchaseEntry);
tpPurchaseEntry.Show();
PurchaseEntry.Select();
tabControl1.SelectedTab = tpPurchaseEntry ;
모든이 개까지 OK입니다. 그러나 ChildForm 닫을 때 TabPage 제거 할 수 없습니다. 다음 명령 만
은 ChildForm을 닫지 만 빈 TabPage는 여전히 남아 있습니다.
this.Close();
은 내가 TabPage가
tabControl1.TabPages.Remove(tabControl1.SelectedTab);
입니다 제거하는 구문을 알고하지만 ChildForm에서 MDIForm의 TabControl에 액세스 할 수 없습니다 임. TabControl에 Public 수정자를 사용하려고 시도했지만
여전히 ChildForm에서 노출되지 않습니다.
특정 TabPage를 제거하고 ChildForm에서 특정 탭 텍스트로 처리하는 방법 ???
감사합니다. 당신은 C# 2.0을 사용하는 경우
더 그랜드 쿠마 Barik
확실 하시겠습니까? ShowDialog()가 아닌 Show()를 원하십니까? –