Event Aggregator:如何阻止事件进一步传播?

时间:2014-09-25 14:48:50

标签: wpf prism

我正面临一个问题,我需要停止从事件聚合器(Prism Framework)传播事件。 我有什么方法可以做到吗?

假设我有10个处理程序用于某个事件。现在,我正在检查第二个事件处理程序中的某些条件,如果该条件评估为true,我想停止通过其余的8个事件处理程序进一步处理该事件。

1 个答案:

答案 0 :(得分:3)

这不是观察者模式的工作方式。 EventAggregator非常适合解耦类 - 对消息感兴趣的各种内容可以subscribe接收它,以及任何想要消息的publish消息。所有这一切都无需知道(a)谁发送和(b)谁正在接收。

您无法控制接收消息的顺序,也无法在发送消息后取消消息。

可能能够使用EventAggregator的Subscription Filtering功能,但这不是我以前必须做的事情。