目前正在制作一个程序,该程序需要输入由多个组件组成的字段。我把它们分解成了它们独特的部分,我想让我的代码工作,当用户输入所需的字符时,它会自动移动,以便它们在下面的文本框中编写其余的代码。
到目前为止我的代码是:
{
InitializeComponent();
if (textBox1.Text.Length == 2)
textBox2.Select();
textBox2.Focus();
if (textBox2.Text.Length == 3)
textBox3.Select();
textBox3.Focus();
if (textBox3.Text.Length == 2)
textBox4.Select();
textBox4.Focus();
}
我确定我可能在错误的位置有这个,但我是C#的新手,因此是一个巨大的新手。任何帮助将不胜感激,因为目前这不起作用,它是非常烦人的。
答案 0 :(得分:1)
如果你在Form的构造函数上调用它,它将不会做任何事情,当Form构造函数工作时,所有文本框的长度都是0.你需要一些事件,如textbox的TextChanged
。因为您需要在写下一些文本之后关注下一个文本框。所以像这样,
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (textBox1.Text.Length == 4)
{
textBox2.Focus();
}
...
}
希望有所帮助,