0

我正在尝试从TabControl选项卡索引不是指定索引的位置删除所有选项卡。

到目前为止我有这个:

for (int i = tabcontrolOptions.TabCount - 1; i >= 0; i--)
{
    if (i != tabNo)
    {
        tabcontrolOptions.TabPages.RemoveAt(i);
    }
}

但这会删除所有选项卡,而不是指定的 tabNo。我究竟做错了什么?

4

1 回答 1

2

当您删除一个选项卡时,这些选项卡会被重新索引。实际上,您正在做的事情不应该受此影响。但是无论如何尝试以下方法,也许它会有所帮助。

显式引用选项卡对象,而不是按索引:

var tabToKeep = tabcontrolOption.TabPages[tabNo];
for (int i = tabcontrolOptions.TabCount - 1; i >= 0; i--)
{
    if (tabcontrolOption.TabPages[i] != tabToKeep)
    {
        tabcontrolOptions.TabPages.RemoveAt(i);
    }
}
于 2012-09-23T23:38:36.880 回答