- - PR -
NumericUpDownの値変更
1|2|3
次のページへ»
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-06-22 16:17
Visual Studio .NET 2003(C#)を使って開発をしています。
NumericUpDownの値が直接入力、または右端のUPDOWNボタンにて値を変更された場合のみ 処理が動くようにしたいと思っています。 試しに"ValueChanged"イベントを使ってみましたところ、"Value"プロパティの値が変更 された時に発生してしまうため、コード上で値を変更した場合もイベントが発生してし まいます。 画面上から値を変更した場合のみ、処理をさせたい場合はどうするのでしょうか? フラグ等を設けるのでしょうか?それとも他に有効なイベントがあるのでしょうか? 他のみなさんはどのように対応しているのか気になり、書き込ませて頂きました。 [ メッセージ編集済み 編集者: ユウジ 編集日時 2006-06-22 16:17 ] | ||||||||
|
投稿日時: 2006-06-22 18:07
ハンドラを抜く:
| ||||||||
|
投稿日時: 2006-06-23 14:14
lalupin4さん、ありがとうございます。
上記の方法でできました。 上記の方法をメソッド化し、対象のコントロールを引数で渡したいと考えているのですが、 例えば、以下のようなメソッドを作ったとして、"***"の部分に与えるメソッドはどのよ うにすれば渡せるのでしょうか?
| ||||||||
|
投稿日時: 2006-06-23 14:43
意味がわからんす・・メソッドなんだからイベントハンドラを結びつける必要なんてない。 numericEditUpdate(コントロール,値)で呼び出すだけ。 そんでもってこういうコントロール自体をわたすようなメソッドはやめた方がいい。 | ||||||||
|
投稿日時: 2006-06-23 15:15
画面上に複数のNumericUpDownコントロールがあるため、lalupin4さんに教えて頂いた 処理をメソッド化して、対象を引数として渡せるようにできないものかと考えました。 | ||||||||
|
投稿日時: 2006-06-23 16:17
で解決したの?反対しつつも方法は提示したんだけど?僕。 メソッドなんだからハンドラの追加なんてしなくていいのね。ただ呼び出すだけでいい。 | ||||||||
|
投稿日時: 2006-06-23 16:42
解決してません。 ごめんなさい、私の例が"+="で追加から始まってましたね。
コード上で値を変更した場合に"ValueChanged"イベントを発生させたくないため、 lalupin4さんに教わった方法を行っております ただ、画面上にNumericUpDownコントロールが複数あるため、メソッド化しようと 思いまして。 "numericUpDown1"の部分は引数で渡しているんですけど。 "this.numericUpDown1_ValueChanged"の部分をどのように引っ張ってきて、 EventHandlerに渡せば良いのか、分からないのです。 | ||||||||
|
投稿日時: 2006-06-23 16:48
そもそもご自分で+= new System.EventHandler(***)と書いているので、型がわかっているのにと思うのですが。。。 デリゲートがわからないのであれば、下記などを参照してください。 「イベントとデリゲート」 http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/cpguide/html/cpconEventsDelegates.asp |
1|2|3
次のページへ»