日期:2014-05-18  浏览次数:20870 次

winfrom中个用户控件,怎么以插件形势加载到另一个项目中。
初学,用dll文件,这个结构该怎么来啊,里面的接口该怎么样?在另一个项目中这个接口该怎么使用,来给点代码或个示例看看。。

------解决方案--------------------
这里的DLL与其他项目没有什么区别,在编译的时候指定类型为类库就可以了。在另外的项目中添加该DLL的引用,命名空间不同加个using xxx;其他的没有什么特别的。
------解决方案--------------------
参考
使用反射生成一个窗体的例子:
Assembly assm = Assembly.LoadFrom("e:\\WindowsApplication.dll");
Type TypeToLoad= assm.GetType("WindowsApplication.Form1");

object obj;
obj = Activator.CreateInstance(TypeToLoad);
Form formToShow = null;
formToShow = (Form)obj;
formToShow.Show();

另外参考,
http://www.c-sharpcenter.com/CSNET/dynamicinvoke.asp
http://www.c-sharpcorner.com/Code/2002/April/LoadingAssemblyInfo.asp

Dynamically load a class and execute a method in .NET
http://www.codeproject.com/csharp/DynLoadClassInvokeMethod.asp