IDataErrorInfo
とを実装する BusinessObjects を使用しIEditableObject
ます。BindingList
これらのオブジェクトを持つ s は BindingSources に追加され、フォーム (WinForms) で UserControls と DataGrids をバインドするために使用されます。は、フォームの にBindingSource
DataSource として追加で設定されます。ErrorProvider
現在、タイプ int および short のプロパティには TextBoxes を使用しています。これらは、最小値/最大値などのカスタム検証を使用して BusinessObjects 内で検証されます。カスタム検証からのエラー メッセージが TextBox の横にうまく表示されるため、これは正常に機能します。
ただし、入力が int の値より大きい場合 (例: "9999999999")、BindingSource はその値を BusinesObject に入力しようとさえしませんが、代わりに「Int32 の値が大きすぎました」のようなエラー メッセージをエラー プロバイダーに提供します。 .」。「Int32」でユーザーを悩ませたくはありませんが、そのためのカスタム エラー メッセージが必要です。
BindingSource がこの機能を提供するのは良いことですが、カスタム エラー メッセージを提供することは可能ですか?