私はMVVMを学んでいます。
ViewModel の ObservableCollection プロパティから 2 つのコンボボックスを埋める View があります (例: プロパティ " Oc1 " & " Oc2 ")。また、 Oc2が依存するOc1の選択された項目(例: プロパティ " SelVal ") にバインドされたプロパティがあるため、プロパティSelValが変更されると、Oc2はデータベースからデータを再取得する必要があります。
今、私は解決策を思いつきました。それは私の状況ではうまくいきますが、getアクセサーの原則に準拠していないようです。解決?
私の現在の解決策は次のとおりです。
Oc2のgetアクセサーはデータベースにクエリを実行し、プライベート フィールドをデータベースから返された値 (ビューが使用する値) に設定します。したがって、SetValが変更されると、 SetValセットアクセサーで this.RaisePropertyChanged(" Oc2 ") を呼び出すだけで、View はOc2を要求します。これにより、データベースが照会され、更新されたリストが返されます。問題は、 getアクセサーに値を割り当てているため、意図したとおりにgetアクセサーを使用していないことです。しかし、私が気に入っているのは、それが自己完結型であることです (つまり、コンストラクターで呼び出してから、SelValセットで再度呼び出す必要がある "BindOc2" メソッドは必要ありません)。 アクセサー)。お知らせ下さい。そして、より良い方法は何ですか?