2 つのビュー モデルがViewModelAありViewModelB、どちらも共通を使用してDataServiceA、というユーザー設定を取得しますTheme。 ViewModelB はその設定を変更してデータベースに保存できます。これが発生すると、ViewModelAはそのテーマ値を更新しません。
私はそれを更新できるようにするための適切な行動方針を理解しようとしており、いくつかのオプションを考え出しました:
- 値が保存されたときに DataService がプロパティ通知を発生させるようにします (私はこれが好きではありません)。
- MessengerService を使用して同期を維持します。(メッセージ ループに陥っている問題があります)
- 1 つの ViewModel を別の ViewModel に渡す
何か案は?