利用反射实现窗体动态加载
2007-05-29 13:17
495 查看
听朋友说动态加载窗体的方式很不错,今天试了下,原来专业术语叫反射.又张见识了,嘿嘿!
代码如下:
//通过程序集动态加载窗体
//解决方案名称"动态加载窗体",包含两个项目:WindowsApplication1,WindowsApplication2.
//WindowsApplication1项目中,包含窗体Form1和Form2,Form1中有两个Button:button1,button2并有单击事件.
//WindowsApplication2项目中无改动.
//此事件显示当前项目(WindowsApplication1)中窗体Form2
private void button1_Click(object sender, EventArgs e)
...{
//路径表示要调用的程序集所在路径,可以是窗体生成的*.exe文件或者*.dll文件
string path = Application.StartupPath + @"WindowsApplication1.exe";
Form from2 = null;
//WindowsApplication2.Form1表示命名空间WindowsApplication1下的窗体Form2
from2 = (Form)Activator.CreateInstance(Assembly.LoadFile(path).GetType("WindowsApplication1.Form2", false), true);
from2.Show();
}
//此事件显示项目WindowsApplication2中窗体Form1
private void button2_Click(object sender, EventArgs e)
...{
string path = System.IO.Path.GetFullPath(@"......WindowsApplication2inDebugWindowsApplication2.exe");
Form from1 = null;
from1 = (Form)Activator.CreateInstance(Assembly.LoadFile(path).GetType("WindowsApplication2.Form1", false), true);
from1.Show();
}
代码如下:
//通过程序集动态加载窗体
//解决方案名称"动态加载窗体",包含两个项目:WindowsApplication1,WindowsApplication2.
//WindowsApplication1项目中,包含窗体Form1和Form2,Form1中有两个Button:button1,button2并有单击事件.
//WindowsApplication2项目中无改动.
//此事件显示当前项目(WindowsApplication1)中窗体Form2
private void button1_Click(object sender, EventArgs e)
...{
//路径表示要调用的程序集所在路径,可以是窗体生成的*.exe文件或者*.dll文件
string path = Application.StartupPath + @"WindowsApplication1.exe";
Form from2 = null;
//WindowsApplication2.Form1表示命名空间WindowsApplication1下的窗体Form2
from2 = (Form)Activator.CreateInstance(Assembly.LoadFile(path).GetType("WindowsApplication1.Form2", false), true);
from2.Show();
}
//此事件显示项目WindowsApplication2中窗体Form1
private void button2_Click(object sender, EventArgs e)
...{
string path = System.IO.Path.GetFullPath(@"......WindowsApplication2inDebugWindowsApplication2.exe");
Form from1 = null;
from1 = (Form)Activator.CreateInstance(Assembly.LoadFile(path).GetType("WindowsApplication2.Form1", false), true);
from1.Show();
}
相关文章推荐
- 利用反射动态(运行时)加载窗体
- 利用反射,实现动态调用winform窗体!!
- Android 利用反射实现不安装直接运行APK(动态加载)
- 利用反射实现类的动态加载(程序改正)
- 利用反射实现类的动态加载
- 利用反射,实现动态调用winform窗体(转)
- 利用反射,实现动态调用winform窗体!!
- (转)利用PHP的debug_backtrace函数,实现PHP文件权限管理、动态加载 【反射】
- 利用反射实现类的动态加载
- 《利用反射实现类的动态加载》调试出错的解决
- 利用反射实现类的动态加载
- 利用反射,实现动态调用winform窗体
- C#实现反射调用动态加载的DLL文件中的方法
- Android腾讯微博客户端开发5:利用FootView实现ListView滑动动态加载实现分页
- C#动态执行类库中的函数:利用反射实现(js)Eval,asp(Execute)功能
- C#实现反射调用动态加载的DLL文件中的方法
- Android腾讯微博客户端开发5:利用FootView实现ListView滑动动态加载实现分页
- 动态加载与插件系统的初步实现(一):反射与MEF解决方案
- C#通过反射实现动态加载DLL
- 通过反射获取DLL的类实现加载窗体