0

誰かが答えたり、正しい道に私を送ったりできるように、これを十分に説明できるかどうかを確認します.

ここに行きます:

カスタム コントロールをいくつか作成しました。フォーム、テキストボックス、チェックボックスなど。コントロールの 1 つは、[トップ]、[次へ]、[検索]、[追加]、[削除] などのボタンを含むナビゲーション バーです。

私のフォームには、ナビゲーション バーと、その他のいくつかのカスタム テキスト ボックス、チェックボックス、コンボ ボックスなどがあります。これらの各コントロールには、OnValidatingメソッド内にカスタム コードがあります。

ナビゲーション ボタンのコンテナーのプロパティは、バー内のボタンCausesValidationのプロパティよりも優先されるようです。CausesValidation

したがって、私が本当にやりたいことは、コンテナの をオフにして、各ボタンのプロパティCausesValidationの値が何であれ、フォームのコントロールが個別に尊重されるようにすることです。CausesValidation

ナビゲーション バーを作成したとき、その基本クラスはUserControl. コンテナであるほとんどのコントロールを試しましたが、同様の動作が得られます。

したがって、各コントロールに対して別の方法 ( 以外OnValidating) を選択する必要があるかどうか、またはコンテナーのときに検証を実行する他の方法があるかどうかはわかりませんCasuesValidation = FalseCausesValidationbutton = true

4

1 に答える 1

0

問題を解決しました。

フォーカスがあるかどうかに関係なく、発砲していたことがわかりました。理由はわかりませんし、理由も見つかりませんでした。メソッド内のコードを削除して配置すると、問題が解決しました。Checkbox OnValidatingOnValidatingOnClickCheckChanged

その後、背面のCausesValidationプロパティを に変更できました。ContainerNavigation Barfalse

于 2013-01-10T22:16:39.147 に答える