1 つのエラー プロバイダーで (たとえば) 6 つのテキスト ボックスに対して複数の検証を処理できますか?
1 に答える
1
例では、各テキスト ボックスが空の場合にエラーが発生し、エラーが発生したテキスト ボックスが特定されます。
※スイッチで編集
private void Form1_Load(object sender, EventArgs e)
{
foreach (TextBox textBox in Controls) { textBox.Validating += textBox1_Validating; }
}
private void textBox1_Validating(object sender, CancelEventArgs e)
{
ErrorProvider errProv = new ErrorProvider();
TextBox txtSender = (TextBox)sender;
string content = txtSender.Text;
string error = "";
switch (txtSender.Name)
{
case "textBox1":
error = "error textbox1";
break;
case "textBox2":
error = "error textbox2";
break;
case "textBox3":
error = "error textbox3";
break;
case "textBox4":
error = "error textbox4";
break;
case "textBox5":
error = "error textbox5";
break;
case "textBox6":
error = "error textbox6";
break;
case "textBox7":
error = "error textbox7";
break;
case "textBox8":
error = "error textbox8";
break;
}
if (content == "") { errProv.SetError(txtSender, error); }
}
于 2013-02-05T14:16:22.700 に答える