はじめに
TextBoxの入力内容が確定し、フォーカスが別のコントロールに移動したあとに発生するのが
Validatedイベント です。
入力が正しいと判断されたあとで実行したい処理を記述するのに最適です。
Validatedイベントとは?
Validated イベントは、TextBoxが入力検証(Validating)を通過して
フォーカスが移動した直後に発生します。
このイベント自体ではキャンセルはできません。
例:ユーザーがTextBoxに入力し、他のコントロールに移動 →
入力内容が有効な場合、
入力内容が有効な場合、
Validated イベントが呼び出されます。Validatingとの違い
| 項目 | Validating | Validated |
|---|---|---|
| 発生タイミング | フォーカス移動前 | フォーカス移動後 |
| キャンセル可能 | 可能(e.Cancel=true) |
不可 |
| 主な用途 | 入力チェック | 入力後の処理(登録・反映など) |
基本の使い方
イベントハンドラの例
private void textBox1_Validated(object sender, EventArgs e)
{
MessageBox.Show("入力が確定しました: " + textBox1.Text);
}
Validated イベントはキャンセルできないため、入力完了後に処理を続ける前提で使います。
実用例:入力後にデータを反映
using System;
using System.Windows.Forms;
namespace ValidatedSample
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void textBoxName_Validated(object sender, EventArgs e)
{
labelStatus.Text = "登録済みユーザー名: " + textBoxName.Text;
}
}
}
この例では、ユーザーが名前を入力してフォーカスを移動すると、その内容がラベルに反映されます。
注意点
Validatingがキャンセルされた場合、Validatedは発生しないCausesValidationがfalseのボタンを押すと、Validatedは呼ばれない- 登録処理などの本処理は
Validatedに記述し、入力チェックはValidatingに分けると安全
まとめ
Validatedは入力が正しく完了したあとに発生するイベント- データ反映や状態更新に向いている
Validatingとセットで使うことで堅牢な入力処理が実現できる
Please follow and like us:

コメント