私は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のにアクセスImはできません知っています。私はTabControlのPublicモディファイアを使用しようとしましたが、それでもChildFormから公開されていません。
特定のTabPageを(特定のタブテキストを使用して)ChildFormから削除して処理するにはどうすればよいですか?
ありがとうございます。あなたがC#2.0を使用している場合は
ラリット・クマールBarik
あなたは本当ですかShowDialog()ではなくShow()が必要ですか? –