Windows窗体文本框意外不可编辑



我有一个应用程序,它向用户询问几个简单的问题。用户应该通过在文本框中输入答案。当我渲染Windows窗体时,文本框是灰色的,与背景融为一体,并且是不可编辑的。

下面是我的代码:

public string waitForText(Point Locution)
    {
        TextBox WriteAnswerHere = new TextBox();
        WriteAnswerHere.Location = Locution;
        WriteAnswerHere.ReadOnly = false;
        WriteAnswerHere.Focus();
        this.Controls.Add(WriteAnswerHere);
        int waiting = 1;
        while (waiting == 1)
        {
            if (Control.ModifierKeys == Keys.Enter)
            {
                waiting = 0;
            }
        }
        string HowYouAre = WriteAnswerHere.Text;
        this.Controls.Remove(WriteAnswerHere);
        return HowYouAre;
    }

输入应该在按下Enter键时提供给应用程序,因此使用(Control)键。ModifierKeys == Keys.Enter);有什么建议我做错了吗?

不应该使用while循环来检测特定的键事件。while循环支撑着表单。我建议你看看这些关于Windows窗体的事件和事件处理程序的文章。

http://msdn.microsoft.com/en-us/library/dacysss4.aspx

最新更新