DOBON.NET DOBON.NETプログラミング掲示板過去ログ

テキストボックスの内容が変更された場合のみメッセージ表示

環境/言語:[C#]
分類:[.NET]

下記↓のように書きテキストボックスに入力する数字のチェックを行っていますが、
何も入力が行われずキャンセルボタンを押すと書きのメッセージが出ます。
テキストボックスに表示されている数字が変更された時のみ
メッセージを表示し、何も変更がなかった際はメッセージを表示しないようにしたいのですが・・・

private void TextBox_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{


Regex r = new Regex(@"^[1-9]?[0-9](?:\.[0-9]{0,6})$");
if (r.IsMatch(TextBox.Text)) MessageBox.Show(this, "OKです", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);

else MessageBox.Show(this,"正しい数字を入力して下さい", MessageBoxButtons.OKCancel);

}
Validatingはやめて、OKボタンで制御する事にしました。


■No4056に返信(なかじさんの記事)
> 下記↓のように書きテキストボックスに入力する数字のチェックを行っていますが、
> 何も入力が行われずキャンセルボタンを押すと書きのメッセージが出ます。
> テキストボックスに表示されている数字が変更された時のみ
> メッセージを表示し、何も変更がなかった際はメッセージを表示しないようにしたいのですが・・・
>
> private void TextBox_Validating(object sender, System.ComponentModel.CancelEventArgs e)
> {
>
>
> Regex r = new Regex(@"^[1-9]?[0-9](?:\.[0-9]{0,6})$");
> if (r.IsMatch(TextBox.Text)) MessageBox.Show(this, "OKです", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
>
> else MessageBox.Show(this,"正しい数字を入力して下さい", MessageBoxButtons.OKCancel);
>
> }
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板