選択を行ViewModel性またはメール間の通信にViewModel、ビューを使用ョ光ツールキット

StackOverflow https://stackoverflow.com/questions/4002667

  •  25-09-2019
  •  | 
  •  

質問

を使用していまョ光ツールキット(I love).私は現在、メールの場合一部の相互作用からViewModelを対象とした特待プログラム"による消費る方は受付にお申し出ください通常、これらの種類のメッセージを示すビューは次のように非表示、表示の確認メッセージデータの保存等

この作品。このコンストラクタのリスナーをアンインストール、登録メッセンジャー:

Messenger.Default.Register<NotificationMessage<PaperNotification>>(this, n => HandlePaperNotification(n));

時を使用していたメッセンジャーの発信横断的な懸念とViewModelsようなアイデンティティー)で見た場合のViewModelの清掃をViewModelLocatorの基底クラスViewModels(ViewModelBase)unregistersず加入します。いさなければいけないのでしョ光ツールキットの取り扱います。しかし、私が使用して、ビューしています明示的に登録は解除して閉館時間のような:

Messenger.Default.Unregister(this);

私が実施する基底クラスのビューを継承します。

しかし、襲いるのではないでしょうかは、コードの香りに使用するメッセンジャーの眺望---で、これが最高です。私だってではなくプロパティを作成しますのViewModelにバインドさんのビューの要素です。の例に隠形性がbooleanの"表示"になっています。私のことを考えれば、私は多くの場合ことを書くValueConverter.片少なくなってきていると思いテスト容易化.他の方の希望が取り入れられていないかにコードおよびその導入過剰ValueConvertersは、コードの匂いが大きいです。

は、その後のすべてを私の質問は、この:

はなくメッセージ内で眺めているのか、あるいは追加しておくとよいでし特性(潜在的にValueConverters)のViewModelドでより結合性ストッキングがあります。

役に立ちましたか?

解決

にョ.ViewModel comunicatesとをはじめ、テレビを見ながらDataBindingやっています。が必要な場合その他の機能を実装する必要がありまで利用します。メールがっているとみViewModels.景色がき"か"visualisersのデータViewModel.

他のヒント

はMVVM光におけるメッセージングロジックのviewmodels間の通信のために存在します。私は、結合および/またはコマンドで解決できなかったことを見るとViewModelに間のすべての通信に遭遇したことがありません。時々私は価値コンバータを必要と時々私はコードビハインドでコードが必要ですが、私はViewModelには直接ビューにデータをプッシュしなければならなかったことがありません。

これは興味深い議論であると私はビュー通信にビューモデルに疑問を抱いたとき、私はこのスレッドを発見しました。興味深いことに、MVVMLightの作成者は見つけるように見えることは完全にビューモデルからメッセージを送ることが許容を表示します。良いMVVMデザインであるかについての意見の相違の他の例。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top