2014-03-01 27 views
0

我有一个带有2个选项卡的选项卡控件。当用户单击第二个选项卡时,它会执行一些验证,然后如果该验证返回false,则用户会收到指示返回的消息。现在,这是我的问题,它改变标签反正与下面的代码: 尽管用户没有看到标签2,它显示为已更改。TabControl避免更改为另一个选项卡

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

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

我想我正在寻找一个事件之前selectedindexchanged检测到用户点击tab2,然后不让他移动..

回答

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; 
      } 
     } 
相关问题