2009-12-15 67 views
0

我有三個視圖,每個視圖都是在用戶控件中實現的。這一切都很好,當他們一個人。當在視圖中選擇一個項目時,我需要通知其他兩個視圖,他們正在查看的項目已更改。MVP演示者和事件

我已經看過處理這個問題的各種方法,但不斷回來,因爲對我來說更好的方法是使用事件。我想知道是否有任何人使用EventAggrergator/Application Controller模式做過這樣的事情嗎?

詹姆斯:-)

+0

您是否試過Google? – Lazarus 2009-12-15 16:26:13

+0

我曾嘗試過不少方法,但有很多不同的方法...... – m0gb0y74 2009-12-16 15:39:35

回答

2

這聽起來像一個很好的候選人施加observer pattern

+0

我曾經看過,但看起來有很多工作要做,而且我看到的所有內容都指向EventAggregator。 – m0gb0y74 2009-12-16 15:38:59

+0

在這種情況下,EventAggregator將用作觀察者。這不是一個好的選擇,當涉及到維護應用程序時不太清楚。現在通過實施一個明確的觀察員,您的額外工作將從長遠來看爲您節省時間和金錢。明確的觀察者設置將明確你的意圖。 – 2009-12-18 14:07:03

+0

您基本上將每個視圖設置爲可觀察。所有的意見都訂閱所有其他的變化。您實際上只需定義2個接口,IObservable和IObserver,並讓每個視圖都實現這兩個接口。 – JohnIdol 2009-12-18 14:33:45