私の会社では、入力が無効な場合にユーザーに通知するためのいくつかのアプローチを見てきました (当社の検証は通常、ユーザーが何らかの形式の [送信] ボタンをクリックしたときに行われます)。
私が見た最も一般的なアプローチは次のとおりです。
ErrorProviderクラスを使用して、どのコントロールに無効な入力が含まれているかを伝えます。(これは私の現在の好みです。検証は 1 回で実行でき、ユーザーはどのコントロールに無効な入力が含まれているかを簡単に特定できるからです。 )
すべてのコントロールで入力を検証し、ユーザーに表示するメッセージのリストをコンパイルします。検証ルーチンが完了したら、すべての「無効な入力」メッセージを (MessageBox を介して) ユーザーに一度に表示します。
各コントロールの入力を順次検証し、無効なデータが見つかったら (MessageBox を介して) ユーザーに通知します。( Control_A と Control_B の両方に無効なデータが含まれている場合、ユーザーは両方の検証メッセージを表示するためにデータを 2 回送信する必要があるため、私はこのアプローチのファンではありません。 )
無効な入力をユーザーに効果的/効率的に通知するための最良の方法は何だと思いますか?