在文本框之间进行值比较
Making Value Comparison Between Textboxes
有几个文本框,每个文本框的值依次递增。我是说
textbox1.Text
哪个事件可以用来验证这个条件。在下面的代码中,我使用了 textChanged 但在场景中,例如 textbox1.Text=30
中的值之后,当我开始输入 textbox1.Text
值 5(我打算输入 59)时,焦点跳转到 textbox1
.比较两个文本框的正确事件是什么。
private void textbox2_TextChanged(object sender, EventArgs e)
{
if (double.Parse(textbox1.Text) > double.Parse(textbox2.Text))
{
textbox1.Focus();
errProvider1.SetError(textbox1, "Error");
}
}
首先:删除 textbox1.Focus(),但保留错误的视觉部分(我想这是由 处理的错误提供者.
可以在用户输入值时检查值,但不要中断流程(即移动焦点)!
正如 Tim 所建议的,您可以将代码移至 Leave 事件,但如果用户按下按钮(或更糟的是使用快捷方式),则可能不会触发此事件。
有几个文本框,每个文本框的值依次递增。我是说
textbox1.Text 哪个事件可以用来验证这个条件。在下面的代码中,我使用了 textChanged 但在场景中,例如 textbox1.Text=30
中的值之后,当我开始输入 textbox1.Text
值 5(我打算输入 59)时,焦点跳转到 textbox1
.比较两个文本框的正确事件是什么。 private void textbox2_TextChanged(object sender, EventArgs e)
{
if (double.Parse(textbox1.Text) > double.Parse(textbox2.Text))
{
textbox1.Focus();
errProvider1.SetError(textbox1, "Error");
}
}
首先:删除 textbox1.Focus(),但保留错误的视觉部分(我想这是由 处理的错误提供者.
可以在用户输入值时检查值,但不要中断流程(即移动焦点)!
正如 Tim 所建议的,您可以将代码移至 Leave 事件,但如果用户按下按钮(或更糟的是使用快捷方式),则可能不会触发此事件。