XamlReader使用本地程序集和WPF程序集中定义的类型加载Xaml,没有任何问题。
如果我包含在外部程序集中定义的类型,则会抛出带有以下消息的XamlParseException。
无法创建未知类型'{clr-namespace:Telerik.Windows.Controls; assembly = Telerik.Windows.Controls.Charting} SeriesMapping'。'行号'13'和行位置'18'。
是否可以使用此技术从外部装配中加载类型?
答案 0 :(得分:8)
是的,这是可能的。诀窍是在调用XamlReader.Parse之前将外部程序集加载到AppDomain中。
如果从进行调用的程序集中引用程序集,那么最简单的方法是使用该外部程序集中的类型声明变量。请注意,没有必要实例化类型。
或者,Assembly.Load方法可用于加载非引用的程序集。