2011-07-20 66 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

相關問題