TabControl取消选项卡的更改

本文关键字:取消 选项 TabControl | 更新日期: 2023-09-27 18:16:13

当用户更改选项卡时,我使用TabControl_SelectedIndexChanged事件。TabControl.SelectedIndex/TabControl.SelectedTab只返回新的选项卡。有什么办法能让我得到之前的账单吗?或者我必须坚持每次更换标签时都存储当前标签?

我想用这个来取消在某些情况下对选项卡的更改,比如有未保存的更改

TabControl取消选项卡的更改

如果要取消更改选项卡,可以使用Deselecting事件。在这里,您可以通过将所提供的TabControlCancelEventArgsCancel属性设置为true来取消更改。

查看http://msdn.microsoft.com/en-us/library/system.windows.forms.tabcontrol.selected%28v=vs.80%29.aspx

有更适合你做的事情。

我使用tabControl Selected方法来阻止用户选择某个选项卡,也就是禁用一个选项卡。

TabPage currentPage;
private void tabControl1_Selected(object sender, TabControlEventArgs e)
{
    if (e.TabPage == tabNotAllowed)
    {
        tabControl1.SelectedTab = currentPage;
        MessageBox.Show("You cannot use the tab you selected.");
    }
    else
    {
        currentPage = e.TabPage;
    }
}