一个简单的winform,画面上一个textbox1,textbox1.tabstop=true。一个button1,button1.tabstop=true。private void button1_Click(object sender, EventArgs e)     
 {       this.Enabled = false;
         this.button1.Enabled = false;
         this.Enabled = true;
 }点击完button1后,再按tab键,focus没有了,进不到textbox1了,为什么啊??
要是没有this.Enabled = false;这句话,focus就自动到textbox1了。
谁知道谢谢了!

解决方案 »

  1.   

    因为this.Enabled = false,C#会自动找下一个this.Enabled = true的
    就是找下一个可操作的控件
      

  2.   

    但是,如果画面上还有一个button2,tabstop=true的话,focus会到button2阿,只是不能进到textbox1了。
      

  3.   

    为什么要有
    this.Enabled = false; 
    this.Enabled = true; 
    这两行代码啊?有什么意义?去了不行吗?
      

  4.   

    如楼上所说:this.Enabled = false; 没有意义吧。你让整个窗体都不可操作了。
    故所有的TAB索引都会失效。
      

  5.   

    那你在
    this.Enabled = true
    这行代码下面添加一行
    text1.focus();
    这样每次你点完按钮就focus到text1上面去了,要想focus到其他控件上,该控件的实例名.focus()就行了。
      

  6.   

    开始客户要求点击完按钮,focus不能动,按tab键后focus移动到text1,但是当按钮非活性后按tab键focus无法移动到text1.
    6楼的朋友,你说的做法我也想了,在和客户商量,如果实在解决不了就这样做.谢谢了.
    在等等晚上结贴