C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: NumericUpdownで変更をキャンセルする方法はありま


(過去ログ 70 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■40983 / inTopicNo.1)  NumericUpdownで変更をキャンセルする方法はありま
  
□投稿者/ ゆる (14回)-(2009/09/08(Tue) 20:25:04)

分類:[C#] 

いつも勉強させて頂いていますm(_ _)m
過去ログ含めて検索してみましたが解決策が見つからず、投稿させて頂きましたm(_ _)m

NumericUpdownコントロールにて、値を変更した時に処理可能な値である場合は処理を行い、
そうでない場合は値の変更をキャンセルするようなことを実現したいのですが、うまくいきません。

ValueChangedイベントで、処理可能な値である場合は処理を行い、
処理ができない場合は「処理できません」的なメッセージを表示した後に
変更をキャンセルしたいのですが、”変更をキャンセルする”ということがうまくできないのです。

値変更時のイベントで、e.cancel = true
みたいなことができればいいなぁと思うのですが、うまい方法が見つかりませんでした。

初歩的な質問で恐縮ですが、アドバイス頂けますと幸いです。
どうぞよろしくお願い致しますm(_ _)m


引用返信 編集キー/
■40984 / inTopicNo.2)  Re[1]: NumericUpdownで変更をキャンセルする方法はありま
□投稿者/ もりお (74回)-(2009/09/08(Tue) 22:44:10)
No40983 (ゆる さん) に返信

前の値を保存しておくのはいかがでしょうか。


private decimal previousValue = 0;

private void numericUpDown1_ValueChanged(object sender, EventArgs e)
{
    if (5 < numericUpDown1.Value)
    {
        numericUpDown1.Value = previousValue;
    }
    else
    {
        previousValue = numericUpDown1.Value;
    }
}

引用返信 編集キー/
■40990 / inTopicNo.3)  Re[2]: NumericUpdownで変更をキャンセルする方法はありま
□投稿者/ ゆる (15回)-(2009/09/09(Wed) 09:32:06)
もりおさま

アドバイスありがとうございます。
oldValueのようなプロパティや変更をキャンセルするメソッドなりがあればと思ったのですが、
なかなかそうもいかないようですね。必要なら自分で作れってことですね(--;

教えていただいた手法で、無事期待通りの動作を実現できました。
とても助かりました。ありがとうございます^^

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -