C#WPF MAF附加组件之间的交互

时间:2010-05-25 12:19:27

标签: c# .net wpf maf

我想在WPF上使用MAF创建一个非常简单的Paint应用程序。

我想创建的Add Ins是:

  1. 主图像处理器 - 显示当前的绘图并接收用户的输入
  2. 工具箱 - 用户可以选择某些类型的图纸工具
  3. 图层 - 用户可以选择要显示的图层,删除图层并选择要在哪个图层上工作
  4. 问题是:如何在不使用主机的情况下在不同的加载项之间进行交互?

    谢谢,    罗尼

1 个答案:

答案 0 :(得分:0)

我这样做是为了让主机在发现它们时将每个加载项收集到一个集合中,然后在初始化它时将该集合传递给每个加载项。您传递给加载项的是其他加载项的接口,因为实际上所有主机都知道它们。

主机应该初始化每个加载项,然后一旦它们全部初始化,发出信号通知它们,然后发现其他加载项并继续执行它们。每个加载项都应公开WhoAreYou方法,以便他们可以在激活时找出安装了其他人的方法。从基类派生加载项将简化此操作。一旦你找到了它,那么它就完成了所有这些。

此方法仅使用主机来收集和分发加载项接口,加载项通过合同管道直接相互通信,而不是通过主机路由消息。