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