「東雲 忠太郎」の平凡な日常のできごと

「東雲 忠太郎」の平凡な日常のできごと

2024.03.26
XML
カテゴリ: C#.NET


このコードは、WPF (Windows Presentation Foundation) でMVVM (Model-View-ViewModel) パターンを使用して、データのバリデーションを行うための ViewModel クラスの一部です。


まず、`MainWindowViewModel` クラスが `ViewModel` クラスと `IDataErrorInfo` インターフェースを継承しています。これにより、ViewModel の変更通知機能と、データのエラー情報を提供する機能を持ちます。




次に、`Value1` プロパティが定義されています。このプロパティは、`_Value1` バッキングフィールドを持ち、`get` と `set` アクセサでアクセスされます。`set` アクセサでは、プロパティの値が変更された際にバリデーションが行われます。もし値が0未満の場合、エラーメッセージが `Errors` ディクショナリに追加されます。そして、`RaisePropertyChanged` メソッドが呼び出され、バインディングされたビューに対してプロパティの変更が通知されます。


`Error` プロパティは、`IDataErrorInfo` インターフェースの実装です。このプロパティは、全体で一般的なエラーメッセージを提供するためのものであり、ここでは未実装です。


`this[string columnName]` プロパティは、各プロパティごとのエラーメッセージを提供するためのものです。`Errors` ディクショナリから該当するプロパティのエラーメッセージを取得して返します。エラーメッセージがない場合は `null` を返します。


このようにして、`MainWindowViewModel` クラスはデータのバリデーションを行い、エラー情報を提供する役割を果たします。これにより、ビュー (UI) との間でデータの整合性を維持することができます。






お気に入りの記事を「いいね!」で応援しよう

Last updated  2024.03.26 20:25:30


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

© Rakuten Group, Inc.
Design a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: