阻止用户单击标签页

时间:2015-03-12 19:10:43

标签: c# winforms tabcontrol tabpage

我还没有找到与此问题相关的解决方案。我打算在某个标签页打开时禁用Winforms TabControl中的其他标签页。因此,不要隐藏它们,而是在单击标签页时禁用打开它们的功能。它应该显示为灰色。这可能吗?我已经阅读了一些关于“选定”事件的内容,但不知道如何使用它。

1 个答案:

答案 0 :(得分:2)

您可以使用Selecting事件:

创建一个类级变量:

int lockedPage = -1;

如果设置为TabPage的索引,您可以选择它,但不能将其保留,即您无法选择任何其他页面。

private void tabControl1_Selecting(object sender, TabControlCancelEventArgs e)
{
    if (lockedPage >= 0 && e.TabPageIndex != lockedPage) e.Cancel = true;

}

如果设置lockedPage = 0;,则会阻止用户离开第一页等。

要重新启用其他页面的选择,请将其设置为-1