我有一个我通过ImportMany属性导入的用户控件列表。请参阅以下代码段:
[ImportMany]
private List<Lazy<IUserControl, ILinkerMetadata>> UserControlsMetaData { get; set; }
因此,如果我将每个懒惰数据记录添加到例如组合框,数据记录不会被加载,因为它被标记为Lazy(相应的!: - ))
现在,我的问题 - 与懒惰相反吗?我无法将元数据导入到这样的字典中:
[ImportMany]
private Dictionary<IUserControl, ILinkerMetadata> UserControlsMetaData {get; set;}
提前致谢,
帕特里克
答案 0 :(得分:0)
如果要获取元数据,则必须导入Lazy。当您访问Value属性时,将创建控件,因此您可能希望将值添加到ComboBox。
答案 1 :(得分:0)
你可以试试ExportFactory。它或多或少与懒惰在某种程度上相反:) 对于wpf,没有内置ExportFactory,所以你必须在mef.codeplex.com上查看示例项目。