0
我問了一個問題here,顯然問題是我可以使用Reflection的Assembly.LoadFile
或Assembly.LoadFrom
加載程序集,並在該程序集中獲取類型,程序集仍然無法在整個應用程序中訪問。所以當WPF試圖解析一個類型時,它找不到該類型,因爲它找不到該程序集。如何在運行時使外部組件可用?
我的問題是,我可以在運行時引用程序集,以便它可以被WPF解析?
我問了一個問題here,顯然問題是我可以使用Reflection的Assembly.LoadFile
或Assembly.LoadFrom
加載程序集,並在該程序集中獲取類型,程序集仍然無法在整個應用程序中訪問。所以當WPF試圖解析一個類型時,它找不到該類型,因爲它找不到該程序集。如何在運行時使外部組件可用?
我的問題是,我可以在運行時引用程序集,以便它可以被WPF解析?
的作品對我來說是處理CurrentDomain.AssemblyResolve
event
AppDomain.CurrentDomain.AssemblyResolve +=
new ResolveEventHandler(OnAssemblyResolveFailure);
Assembly OnAssemblyResolveFailure(object sender, ResolveEventArgs args)
{
AssemblyName name = new AssemblyName(args.Name);
Assembly assembly = .. //some logic here to load the assembly from assembly name
return assembly;
}
這樣,如果應用程序無法解析程序集的名字,它會調用一個解決您的處理程序,以發現它的
可能重複[如何添加類型從外部裝配到工具箱控制? (WPF)](http://stackoverflow.com/questions/4594968/how-to-add-types-from-external-assembly-to-toolbox-control-wpf) – 2011-01-05 07:03:06
您尚未在此提供任何新的信息重複的問題。 – 2011-01-05 07:03:35
我沒有發佈重複的問題。我提出的問題更一般,所以也適用於不同的情況。 – 2011-01-05 07:07:12