TabControl避免更改为另一个选项卡

时间:2014-03-01 14:58:54

标签: tabcontrol selectedindexchanged

我有一个带有2个标签的标签控件。当用户点击第二个标签时,它会进行一些验证,然后如果该验证返回false,则用户会收到一条消息,指示要返回。现在,这是我的问题,它使用下面的代码改变标签: 虽然用户没有看到标签2,但它显示为已更改。

   private void tabprincipal_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (!saved_plan)
            {
                MessageBox.Show("You need to save a plan first.");
                return;
            }

我该如何避免这种行为?我想显示消息,用户要保留在第一个标签

我想我正在查找selectedindexchanged之前的事件,以检测用户是否点击了tab2然后不让他移动..

1 个答案:

答案 0 :(得分:0)

我实际上找到了一种使用TabControl的取消选择方法的方法

private void tabprincipal_Deselecting(object sender, TabControlCancelEventArgs e)
        {
            if (!saved_plan)
            {
                MessageBox.Show("You need to save a plan first");
                e.Cancel = true;
            }
        }