私はWinFormsを初めて使用し、ユーザーがテキストボックスにデータを入力して「保存」または「キャンセル」を押すことができる基本的なフォームを持っています。ユーザーが実際にTextBoxに何かを入力することを保証するためにデータ検証を実装したかったのですが、現時点では、TextBox自体がクリックされた場合にのみErrorProviderアイコンが表示され、「保存」ボタンが押されたときに検証をチェックしていません。意図していた。Visual Studio 2013 も使用しています。
このイベント ハンドラー コードはbtnSave_Click
メソッド内にあります。
this.txtNote.Validating += new
System.ComponentModel.CancelEventHandler(this.txtNote_Validating);
txtNote_Validating
メソッドは次のようになります。
protected void txtNote_Validating(object sender,
System.ComponentModel.CancelEventArgs e)
{
if(txtNote.Text.Length == 0)
{
errorProvider1.SetError((Control)txtNote, "An explanation of your time entry is required.");
}
else
{
errorProvider1.SetError(txtNote, "");
}
}
また、プロパティ ウィンドウにイベントを追加しておらず、プロパティ ウィンドウのbtnSave イベントにtxtNote
検証イベント:txtNote_Validating
とクリック:を追加しました。btnSave_Click
私の質問は、TextBox をクリックしたときにのみ検証されるのはなぜですか。また、「保存」ボタンで TextBox の検証を ErrorProvider コンポーネントでチェックするにはどうすればよいですか?