私のUserControlには、TextBoxから継承していないTextBoxがあり、
数字の検証(数字のみを許可)
public delegate void usercontrolError(string message);
public event usercontrolError onerror;
Private void txtLocl_KeyPress(object sender, KeyPressEventArgs e)
{
if(e.KeyChar != '\b')
{
if(!char.IsDigit(e.KeyChar))
{
e.Handled=true;
}
else
{
onerror.Invoke("Enter Digits Only");
}
}
}
フォームに次のコードを記述します
public Form1()
{
txtLocl.onerror += new ciscontrols.UserControl.usercontrolError(mtbDtTmPk1_onerror);
}
void UserControl_onerror(string message)
{
epfrm2.SetError(mtbDtTmPk1, message);
//throw new NotImplementedException();
}
上記のコードをFormで記述します。今、私はフォームにコードを書きたくありません。ただし、errorProviderはForm1のみです。どうすれば知ることができますか。ユーザーはForm1にコードを記述できませんが、FormErrorProviderは機能します。