我有一个应用程序,它会向用户询问一些简单的问题。用户应该通过在TextBox中输入答案来输入答案。当我渲染Windows窗体时,TextBox显示为灰色,与背景混合,并且是不可编辑的。
这是我的代码:
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);关于我做错了什么的建议?
答案 0 :(得分:1)
您不应使用while循环来检测特定的键事件。你的while循环正在阻止表单。我建议您查看有关Windows窗体的事件和事件处理程序的这些文章。