如何使用上下文菜单条实现选项卡控件的“关闭所有其他选项卡”功能?
答案 0 :(得分:3)
我在主窗口中只使用一个tabcontrol创建了一个小应用程序,并且连接到该tabcontrol的上下文菜单。
以下是上下文菜单项的处理程序:
private void closeAllOtherToolStripMenuItem_Click(object sender, EventArgs e)
{
for (int i = 0; i < this.tabControl1.TabCount; i++)
if (i != tabControl1.SelectedIndex)
tabControl1.TabPages.RemoveAt(i--);
}
答案 1 :(得分:1)
尝试使用此简单代码“关闭所有标签”。
tabControl.TabPages.Clear()
答案 2 :(得分:0)
在“关闭所有”标签之前,您应该处理(并删除事件处理程序)您在每个标签页中实例化的任何控件/对象。此外,您可以使用TabPages集合的.Clear方法,而不是删除循环中的每个标签页。
答案 3 :(得分:0)
以下代码会关闭所有标签,在关闭之前,请确保保存标签的内容。
private void closeAllToolStripMenuItem_Click(object sender, EventArgs e)
{
TabControl.TabPageCollection pages = tabControl1.TabPages;
foreach (TabPage page in pages)
{
saveToolStripMenuItem_Click(sender, e);
closeTabToolStripMenuItem_Click(sender, e);
}
}