我現在有看起來像這樣的MVVM備用事件模式
MainWindowViewModel
TabViewModel
EditorViewModel
ReviewingServices
ConflictFinder
我遇到的問題是,TabViewModel
希望被通知的衝突(從ReviewingServices
)的等級以及其他的東西。我可以創造我所有的依賴公共getter和訂閱任何我想要與DependencyA.DependencyB.DependencyC += SomeHandler;
但這是相當混亂。我發現自己創造了太多我想數的事件。本質上,我創建了一個凌亂的事件網絡。我喜歡我爲每個班級創建的責任分離,但是每個班級都有2-3個活動,每個班級都很難維護。如果用戶只有1級以上,我沒有創建和維護事件的問題。當說MainWindowViewModel
希望被通知的新的意見(從ReviewingServies
公佈的亂來。
有沒有做這些類型的事件好不到哪一個用戶可能想訂閱被深深嵌套在應用程序事件?