2011-07-20 44 views
0

我想使自定义控件可扩展(即主/细节,搜索等)。自定义控件的每个实例都会通过属性请求其功能。 (在这种情况下,它将加载额外的组件以支持主/细节)。在这种情况下,它将加载额外的组件以支持主/细节。如何将MEF支持添加到Silverlight自定义控件

这是MEF可以使用的东西吗?

干杯

回答

0

您可以使用MEF,但它可能会根据您的情况

从你描述它听起来像定制控件实例有点麻烦是谁决定什么额外的组件来加载一个。

MEF通常用于当目标thing犯规知道到底是什么就是了,只是为所欲为正在实施一些接口(或合约更准确)。

例如,您的自定义控件可能知道它想要搜索,但不是如何执行。然后你会有一个搜索界面,也许只有一个搜索(字符串)方法。您的控件将具有该类型的属性,并且mef将使用mef在其他程序集中找到的实例来填充该属性。

您可以为您控制的不同“区域”定义合同,并由mef填充这些合同,但已有框架,例如您应该查看的Prism,以供参考。

我建议找过MSDN docs for MEF,看看它们是否适用于您的情况

+0

感谢您的快速回复 - 我会看看棱镜 – Norsten

+0

高兴帮助棱镜文档的:)很多会提到[团结] (http://msdn.microsoft.com/en-us/library/ff647202.aspx),另一个依赖注入框架(如MEF)一般原则上它们非常相似,所以关于统一性的所有内容也可以应用于MEF。还有一些文档使用MEF而不是Unity与Prism。 – aL3891

相关问题