データ項目が .NET Framework にある INotifyDataErrorInfo
または IDataErrorInfo
インターフェイスを実装する場合、ユーザーがセルに無効なデータを入力すると DataPresenter のコントロール ファミリーはエラー メッセージを表示できます。ただし、 FieldLayoutSettings オブジェクトの SupportDataErrorInfo プロパティを SupportDataErrorInfo 列挙値に設定すると、 データ エラー情報のサポートを有効にする必要があります。
データ エラー サポート有効化に加えて、SupportDataErrorInfo
プロパティは DataPresenter コントロールがセル、レコード セレクターまたは両方のいずれにデータ エラーを表示するかを決定します。
以下の画像は最初のレコードの ProductID 列でデータ エラーを表示します。
注:
以下の表では、SupportDataErrorInfo
プロパティの値に基づいてエラー情報を取得するために DataPresenter コントロールがデータ項目のメソッドまたはプロパティをアクセスする方法を表示します。
FieldLayoutSettings
オブジェクトでデータ エラー サポートを有効にする場合、影響を受けたフィールド レイアウトのフィールドはデータ エラーを自動的にレポートします。フィールド オブジェクトの FieldSettings プロパティによって公開されている SupportDataErrorInfo プロパティを false
に設定することによってフィールドでこの機能を選択的に無効にできます。
FieldLayoutSettings
オブジェクトの DataErrorDisplayMode プロパティを DataErrorDisplayMode 列挙値に設定することによって、 DataPresenter コントロールがデータ エラーをレポートする方法を修正することも可能です。DataErrorDisplayMode
プロパティを設定すると、データ エラーがエラー アイコン、強調表示または両方のいずれで示されるかを決定します。
IDataErrorInfo
インターフェイスまたは INotifyDataErrorInfo
インターフェイスのサポートを有効にして、組み込まれた xamEditor コントロールの ValueConstraint プロパティを設定する場合、値の制約エラーが原因となってエラー アイコンと強調表示の両方またはいずれかが表示されます。値の制約によりエンドユーザーにエラーを修正することを強制し、修正するまでフォーカスを新しいセルに移動できません。FieldSettings
オブジェクトの InvalidValueBehavior プロパティを RevertValue に設定する場合、セルの値は自動的に元の値に戻ります。これによってエンドユーザーはフォーカスを新しいセルに移動できます。ただし、値は値の制約を常に渡すため、 DataPresenter コントロールはエラー アイコン/強調表示を表示することはありません。一方、値の制約を使用しない場合、 DataPresenter コントロールはデータ項目のエラー メッセージを適切なセルに表示し、エンドユーザーはフォーカスを新しいセルに移動できます。
このトピックの追加情報については、以下のトピックも合わせてご参照ください。