在我的应用程序中,我试图在标签页中使用表格。这些表格都是数据管理表格。我编辑了tabcontrol(创建了一个自定义tabcontrol),以便可以通过双击tabheader来删除tabpage。
protected override void OnMouseDoubleClick(MouseEventArgs e)
{
base.OnMouseDoubleClick(e);
//* Default method of closing a tab.
if (Selectedtab != null)
TabPages.Remove(Selectedtab);
}
尽管可以。它实际上没有满足我的需求。因为选项卡页面中的表单上的任何更改都将丢失,无论以下内容如何
public partial class SomeForm : Form
{
private void SomeForm_FormClosing(object sender, FormClosingEventArgs e)
{
if (HasChanges() && CustomMessage.WarningBox("There is unsaved data. Are you sure you want to close"))
return;
((TabControl)((TabPage)this.Parent).Parent).TabPages.Remove((TabPage)this.Parent);
}
}
在此功能上设置断点时,它永远不会进入。现在我的问题是:是否可以从Tabcontrol调用表单的Close方法。最好是类似下面的内容。
protected override void OnMouseDoubleClick(MouseEventArgs e)
{
base.OnMouseDoubleClick(e);
if (Selectedtab != null)
{
if (Selectedtab.EmbeddedForm != null)
TabPages.ASelectedtab.EmbeddedForm.Close();
}
}
我面临的主要问题是,我仅知道选定的选项卡,不知道如何访问表单上的功能。而且我也找不到。