2009-03-19 7 views
0

背景: "クリアフォーム"と "キャンセル"ボタンがあるフォームがあります。無効なデータがドロップダウン内にあり、これらのボタンのいずれかをクリックすると、ドロップダウンの検証イベントが発生します。私は、 "クリア"または "キャンセル"のいずれかが押されたときに成功するための検証イベントにコードを追加しました。Winformsのボタンクリックイベントの結果の検証結果

問題: 次に起こることは、ボタンクリックイベントが発生することです。 「キャンセル」ボタンの場合はそれが実行されます。しかし、 "クリア"ボタンのイベントはありません。 2つのボタン/イベントの間に違いは見られません。何が起こっているのですが、どうすれば修正できますか?

答えて

2

何が起こっているのかわからない、Validatingイベントハンドラでe.Cancelを設定してもクリックイベントは実行されません。しかし、これを行うより良い方法があります。ボタンのCausesValidationプロパティをFalseに設定します。

+0

TY、CausesValidationプロパティは私が必要としていたものでした!昨日すべての種類のばかばかしい仕事を試して1時間以上過ごした。心から感謝する。 – Jeff

0

私は別の同様のシナリオに遭遇しました。答えを探しているうちに、私は何ヶ月もアガオに尋ねたというこの古い質問に出会った!この場合、バリデーションイベントはフォーカスを元のフィールドから移動し、ボタンイベントが発生する準備ができた時点ではできませんでした。検証からbutton-clickイベントを明示的に呼び出すことで解決しました。

関連する問題