一个笨办法……在选中以后换成以前的页面private int tmp=0;private void tabControl1_SelectedIndexChanged(object sender, System.EventArgs e)
{
    if(tabControl1.SelectedIndex==2)  tabControl1.SelectedIndex=tmp;    tmp=tabControl1.SelectedIndex;
}

解决方案 »

  1.   

    老大,tabpage1没Enable这个属性
      

  2.   

    让鼠标放不上去可以么?private void tabControl1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
    {
    if(e.X>=2*tabControl1.ItemSize.Width && e.X<=3*tabControl1.ItemSize.Width && e.Y>=0 && e.Y<=tabControl1.ItemSize.Height)

    Cursor.Position=new Point(Cursor.Position.X+tabControl1.ItemSize.Width,Cursor.Position.Y);}不然去找屏蔽鼠标点击的API把里面那句换掉不过就算这样,还需要屏蔽键盘事件,tabControl是可以用键盘左右来选择页面的
      

  3.   

    界面上变灰很好办阿,把标签项全部都用图片Imagelist来显示,图片换来换去就可以了
    主要是从功能上要控制不能选到也不知道微软搞什么,这样一个控件居然标签没有Enable属性,搞得这么麻烦
      

  4.   

    有ENABLE 这个属性.只是没有查到而已.tabControl1.TabPages[1].Enabled= true; 在给你一个网址:
    http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/cpref/html/frlrfsystemtextstringbuilderclasstopic.asp
      

  5.   

    谢谢。确实有ENABLE 这个属性,但这个属性是灰掉Tab页的工作区,不是我想要的
    我需要时Tab页的标签不能用,就是不能选中某一页
      

  6.   

    这样的话,只能用代码来实现了,
    在TabControl1.SelectedIndexChanged里做判断,那些TABPAGE不可选中.
      

  7.   

    我的应用不允许Tab页翻过去再翻回来,必须根本就不能翻过去
    还有什么办法吗?
      

  8.   

    我也遇到这个问题,我是这么解决的,把这个选项页移除了
    Controls.Remove(tabPage_Server);
    用它的时候再加过来