使用Prism与模块进行通信?

时间:2011-12-24 15:16:54

标签: c# wpf prism

从Prism文档中可以看出,有四种方式可以跨模块进行通信 -

  • 解决方案指挥
  • 地区背景
  • 共享服务
  • 事件汇总

    1. 我可以选择其中一种方法并将其应用于所有跨模块通信吗?或者我应该根据具体情况使用不同的方法吗?
    2. 特别是,在一个应用程序中,我正在写一个模块中的按钮,当用户点击它时,我想在另一个模块中启动一个线程。我会在这种情况下使用哪种通讯方式?

1 个答案:

答案 0 :(得分:7)

答案1 :是的,您可以全部使用单一方法。大多数时候,这样做会更容易。

Ans 2 :我建议您使用事件聚合来执行此操作。这样,按钮单击和线程执行之间的耦合非常松散。这样,侦听模块只需知道一个事件,无论它从何处被提升。

由于它是单个通知而不是一堆相互关联的通知/通信,因此最好聚合一个事件而不是创建共享服务