删除标签页
我正在使用 C# 2005 创建 Windows 应用程序。 我有一个 MDIForm (frmMainMenu),其中包含一个 Menustrip 和一个
TabControl。 我的 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 ;
到目前为止一切正常。 但当 ChildForm 关闭时,我无法删除 TabPage。 以下命令仅
关闭 ChildForm,但空 TabPage 仍然保留。
this.Close();
我知道删除 TabPage 的语法是
tabControl1.TabPages.Remove(tabControl1.SelectedTab);
但我无法从 ChildForm 访问 MDIForm 的 TabControl。 我尝试对 TabControl 使用 Public 修饰符,但
它仍然没有从 ChildForm 中公开。
如何从 ChildForm 中删除并处置特定的 TabPage(带有特定的选项卡文本)???
谢谢。
拉利特·库马尔·巴里克
I am using C# 2005 to create a Windows application. I have a MDIForm (frmMainMenu) which contains a Menustrip and a
TabControl. My ChildForm is frmPurchaseEntry. When the user clicks on a particular Menu option a new TabPage is created and
the child form is displayed within the TabPage.
I am using the following code in the MenuClick event of the MDIForm (frmMainMenu) :
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 ;
Everything is OK upto this. But I am unable to remove the TabPage when the ChildForm is closed. The following command only
closes the ChildForm, but the empty TabPage still remains.
this.Close();
I know the syntax to remove a TabPage is
tabControl1.TabPages.Remove(tabControl1.SelectedTab);
But Im unable to access the TabControl of MDIForm from the ChildForm. I tried to use Public modifier for the TabControl, but
still it is not exposed from the ChildForm.
How can I remove AND dispose a particular TabPage (with a particular Tab Text) from the ChildForm???
Thank you.
Lalit Kumar Barik
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
之前/之后
添加
如果您使用的是 C# 2.0,请将“(_s,_e)=>tabControl1.TabPages.Remove(tpPurchaseEntry)”替换为
Before/after the
add
If you are using C# 2.0 replace "(_s,_e)=>tabControl1.TabPages.Remove(tpPurchaseEntry)" with