是Leve事件,还是LostFocus事件?

解决方案 »

  1.   

    没有太理解楼主的意思。Focus是一个方法,你是想通过调用UserControl.Focus()来使文本框得到焦点吗?还是想处理文本框失去焦点或得到焦点的事件呢?
      

  2.   

    现在是复合控件的focus无反应。
    需要设置他的focus()
      

  3.   

    你可以在UserControl的GetFocus的事件里甚至在Enter事件里对TextBox调用Focus方法就可以了。这样会保证当调用UserControl的Focus方法时TextBox同时具有焦点。
      

  4.   

    有一个简单的方法,你可以在Load后设置TextBox为UserControl的ActiveControl就可以了。this.ActiveControl =this.textBox1;
      

  5.   

    我另外写了个方法,焦点没什么问题了
    我是在myTextBox.keydown事件里判断如果是回键则下一个myTextBox就获得焦点
    if (e.KeyData == Keys.Enter)
                {
                    if (this.myTextBoxGray3.Text == "")
                    {
                        MessageBox.Show("厂商号不允许为空!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    }
                    else
                    {
                        this.myTextBoxGray4.focus();
                    }
                }
    现在大概可以估计是keydown事件的问题了。大家给点意见