私はC#winformのエラープロバイダーから使用しました。私のフォームにはテキストボックスがあります。エラープロバイダーは、2つの番号が含まれていることを確認しました。これは、入力が桁で、桁数が2桁であることを意味します。入力が2文字の場合、エラープロバイダーは機能しますが、入力が文字と数字の場合、エラープロバイダーは機能しませんでした。私のコードを確認してください。
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();
}
}