c#通过插件dll在winform中添加控件
我有一个Winform Gui,可用于各种用途。我正在创建一个额外的插件,如果存在,将另一个tabpage添加到我的tabcontrol中,然后添加所需的控件,等等 我的问题是,我最好将其编码到主应用程序中,即“如果存在dll,则创建此视图”,还是将其编码到dll中并使用反射?可以使用反射吗c#通过插件dll在winform中添加控件,c#,winforms,dll,C#,Winforms,Dll,我有一个Winform Gui,可用于各种用途。我正在创建一个额外的插件,如果存在,将另一个tabpage添加到我的tabcontrol中,然后添加所需的控件,等等 我的问题是,我最好将其编码到主应用程序中,即“如果存在dll,则创建此视图”,还是将其编码到dll中并使用反射?可以使用反射吗 谢谢/您也许应该研究一下现有的框架,它正是您所需要的。例如,托管可扩展性框架 MEF为该问题提供了一个简单的解决方案 运行时可扩展性问题。直到 现在,任何想要 支持所需的插件模型 从中创建自己的基础设施 划
谢谢/您也许应该研究一下现有的框架,它正是您所需要的。例如,托管可扩展性框架 MEF为该问题提供了一个简单的解决方案 运行时可扩展性问题。直到 现在,任何想要 支持所需的插件模型 从中创建自己的基础设施 划痕这些插件通常是 特定于应用程序,无法删除 跨多个应用程序重用 实现。MEF提供了一个 主机应用程序的标准方式 暴露自己并消耗外部资源 扩展。扩展,按其 自然,可在其中重复使用 不同的应用。但是, 扩展仍然可以实施 以特定于应用程序的方式。 扩展本身可以依赖于 彼此和MEF将确保 它们以正确的方式连接在一起 订购(另一件你不必订购的东西) 担心)。MEF提供了一套 针对您的应用程序的发现方法 定位和加载应用程序 可用的扩展名 或者,如果您需要在单独的应用程序域中,您可以使用托管加载项框架 但在你的情况下,我认为MEF应该这样做。
如果你有这样一个场景,可能会有点过头了。。。但这是一种选择。您可能应该研究一下现有的框架,它正是您所需要的。例如,托管可扩展性框架 MEF为该问题提供了一个简单的解决方案 运行时可扩展性问题。直到 现在,任何想要 支持所需的插件模型 从中创建自己的基础设施 划痕这些插件通常是 特定于应用程序,无法删除 跨多个应用程序重用 实现。MEF提供了一个 主机应用程序的标准方式 暴露自己并消耗外部资源 扩展。扩展,按其 自然,可在其中重复使用 不同的应用。但是, 扩展仍然可以实施 以特定于应用程序的方式。 扩展本身可以依赖于 彼此和MEF将确保 它们以正确的方式连接在一起 订购(另一件你不必订购的东西) 担心)。MEF提供了一套 针对您的应用程序的发现方法 定位和加载应用程序 可用的扩展名 或者,如果您需要在单独的应用程序域中,您可以使用托管加载项框架 但在你的情况下,我认为MEF应该这样做。 如果你有这样一个场景,可能会有点过头了。。。但这是一种选择