私は を持ってForm
いTextBox
ます。ユーザーが黒を塗りつぶさずに次のフォームに移動できないようにしたいと思いますTextBox
。どうやってやるの?
if(textBox.Text.Length == 0)
MessageBox.Show("Have To Fill All The Fields!");
さらに何を追加すればよいですか?
イベントにハンドラーを追加しValidating
、エラー プロバイダーを使用して検証エラーをコントロールに設定します。
void textBox_Validating(object sender, CancelEventArgs e)
{
string error = null;
if(textBox.Text.Length == 0 ) {
error = "Please enter this value";
e.Cancel = true;
}
errorProvider1.SetError((Control)sender, error);
}
複数のテキスト ボックス コントロールに同じハンドラーを使用できます (イベント引数から送信者を使用して、特定のテキスト ボックス インスタンスを取得するだけです)。
private void Form_FormClosing(object sender, FormClosingEventArgs e)
{
if (textBox.Text.Length == 0)
{
MessageBox.Show("Please fill the field");
e.Cancel = true;
}
}
他に何が欲しいですか?
コードは、次のフォームに移動するためのようなものになります
protected void btn_Click(object sender, EventArgs e)
{
if(textBox.Text.Length == 0)
{
MessageBox.Show("Have To Fill All The Fields!");
textBox.focus();
}
else
{
// Work to move on next form
}
}