1

.NET 3.0 有一些关于如何为您自己的应用程序创建和使用插件的更新。我读到了一些你必须为插件和主机应用程序之间的通信创建的“管道”,但找不到关于它的更多信息。

您将如何使用 .NET 3.0/3.5 在应用程序中创建加载项功能?

必要时附加信息:宿主应用程序是使用 WPF 和一些通用功能制作的。每个加载项都应将自己的注册选项卡添加到给定容器中,并使用自己的内容(按钮、文本字段等)和扩展主机应用程序的方法。

4

3 回答 3

2

除了Daniels codeplex 链接之外,Jason He 还有一个很好的关于在开发 Paint.NET 时使用 System.AddIn 命名空间的系列文章 -

http://blogs.msdn.com/zifengh/archive/2007/01/04/addin-model-in-paint-net-1-introduction.aspx

于 2008-10-07T18:36:25.967 回答
1

现在还提供托管可扩展性框架 ( www.codeplex.com/mef ),它允许您利用丰富的插件平台。

您可能还会发现依赖注入类似于您可以使用的东西(UnityStructureMap仅举两个例子)。

您可以在依赖注入框架之上创建一个插件平台,尽管像 MEF 这样的专用插件平台可能更容易实现。

于 2008-10-07T18:57:17.330 回答
1

一定要查看www.codeplex.com/mef上的托管可扩展性框架。它是一个有助于创建可扩展应用程序的框架。创建可插拔应用程序时,它会处理所有管道。我目前正在写一系列文章,在http://www.jenswinter.com/?tag=/mef上展示 mef 的基本功能。但是这些文章是德文的。

您应该尝试的另一个框架是CompositeWpf (fka Prism)。它让您创建复合 WPF 应用程序。您的应用程序将由一个外壳应用程序和几个模块项目组成,这些模块项目连接在一起并挂接到外壳程序中。

于 2008-10-07T19:38:41.037 回答