我在 C# winform 中使用了错误提供程序。在我的表单中有文本框。错误提供者检查它是否包含两个数字。这意味着输入是数字,数字的数量是两个数字。当输入为 2 char 时,错误提供程序有效,但当输入为 char 和 digit 时,错误提供程序无效。请检查我的代码。
private void textbox1_Leave(object sender, EventArgs e)
{
string text = textbox1.Text;
bool hasDigit = false;
foreach (char letter in text)
{
if (char.IsDigit(letter))
{
hasDigit = true;
break;
}
}
// Call SetError or Clear on the ErrorProvider.
if (!hasDigit )
{
errorProvider1.SetError(textbox1, "Please enter digit");
}
else if(hasDigit)
{
if (text.TextLength != 2)
{
errorProvider1.SetError(textbox1, "Number of digit is two number");
}
else
errorProvider1.Clear();
}
}