在textBox中按下Enter或Tab时能够校验输入是不是正确
在textBox中按下Enter或Tab时能够校验输入是否正确
目的:在textBox中按下Enter或Tab时能够校验输入是否正确。
问题:用这两种方法执行时,按Enter 键均可以实现功能,但按Tab键均直接跳转下一焦点,不执行校验事件?
实现方法:
方法一:
private void textBox车牌号_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab)
{
校验车牌号码();
}
}
方法二:
private void textBox联系电话_KeyPress(object sender, KeyPressEventArgs e)
{
//按Enter实现Tab功能
if (e.KeyChar == 13 || e.KeyChar == 9)
{
校验联系电话();
}
}
------解决方案--------------------
private void textBox1_Leave(object sender, EventArgs e)
{
MessageBox.Show("Leave!");
}
------解决方案--------------------
Tab使用leave事件
------解决方案--------------------
不输入就不让关闭,强盗啊!Leave 当然是首选,多个控件共用一个就行了,用 Sender 来识别哪个输入框。
------解决方案--------------------
让 它失去焦点 的时候再检验 这样不更好
------解决方案--------------------
使用LostFocus事件
------解决方案--------------------
this.txtName.LostFocus+=......
目的:在textBox中按下Enter或Tab时能够校验输入是否正确。
问题:用这两种方法执行时,按Enter 键均可以实现功能,但按Tab键均直接跳转下一焦点,不执行校验事件?
实现方法:
方法一:
private void textBox车牌号_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter || e.KeyCode == Keys.Tab)
{
校验车牌号码();
}
}
方法二:
private void textBox联系电话_KeyPress(object sender, KeyPressEventArgs e)
{
//按Enter实现Tab功能
if (e.KeyChar == 13 || e.KeyChar == 9)
{
校验联系电话();
}
}
------解决方案--------------------
private void textBox1_Leave(object sender, EventArgs e)
{
MessageBox.Show("Leave!");
}
------解决方案--------------------
Tab使用leave事件
------解决方案--------------------
不输入就不让关闭,强盗啊!Leave 当然是首选,多个控件共用一个就行了,用 Sender 来识别哪个输入框。
------解决方案--------------------
让 它失去焦点 的时候再检验 这样不更好
------解决方案--------------------
使用LostFocus事件
------解决方案--------------------
this.txtName.LostFocus+=......