使用冒泡/隧道无法完成的Prism Event Aggregator怎么办?

时间:2015-01-21 12:29:10

标签: wpf

想象一下Visual Studio类型的用户界面,其中有一个左窗格和一个右窗格。我需要将一个源自左窗格的消息/事件发送到右窗格中的元素。作为一名WPF新手,我有以下相关问题:

  1. 可以使用冒泡和隧道事件来完成吗?
  2. 如果答案是'是',哪个更好:冒泡/隧道,还是Prism的事件聚合器?

1 个答案:

答案 0 :(得分:0)

我使用事件聚合来通知我发生的事件的“窗格”,并且都需要响应。

因此,举一个例子,我会同时订阅两个'窗格'到一个事件。现在,假设我向数据库或web服务发出请求,并且在返回结果时,我想同时通知两个“窗格”数据已到达。我可以通过发布到我的活动轻松地做到这一点,然后两个'窗格'将开始他们需要的任何东西。

我喜欢这种方式,因为如果我在左侧“窗格”中删除了另一个模块,我需要做的就是订阅该事件以响应任何数据。