如何比较两个textbox.text比其他带有错误提供程序的textbox.text更大?

时间:2012-11-17 10:37:52

标签: c# winforms user-controls comparison errorprovider

我在C#winform。txtFromtxtTo中将两个文本框放在用户控件中。我想比较两个textbox.text,如果txtTo小于txtFrom,则会显示错误提供程序。 我该怎么办?

1 个答案:

答案 0 :(得分:2)

您不会将错误提供程序进行比较。错误提供程序仅显示控件具有与控件关联的错误。

  • ErrorProvider组件添加到表单
  • 比较txtFrom.TexttxtTo.Text(例如,在验证活动期间)
  • 如果文字较少(我不知道对您来说意味着什么),请拨打errorProvider1.SetError(txtTo, "Text is less than txtFrom"),否则请致电errorProvider1.SetError(txtTo, "")

如何进行比较:

errorProvider1.SetError(txtFrom, "");
errorProvider1.SetError(txtTo, "");

int fromValue;
int toValue;

if (!Int32.TryParse(txtFrom.Text, out fromValue)
{
    errorProvider1.SetError(txtFrom, "Integer number required");
    return;
}

if (!Int32.TryParse(txtTo.Text, out toValue)
{
    errorProvider1.SetError(txtTo, "Integer number required");
    return;
}

if (toValue < fromValue)
{
    errorProvider1.SetError(txtTo, "To is less than From");
    return;
}

还要考虑使用NumericUpDown控件来避免文本解析。