最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
基于组件的.NET软件开发(5)
时间:2022-07-02 11:55:31 编辑:袖梨 来源:一聚教程网
实战:
创建一个VB.NET Windows应用程序:VBTestDynamicComponent。将前面介绍的两个类ComponentList和LoadComponent加入到工程中。
我们在程序启动时从配置文件中读入相关的程序集信息和类名信息,为此在主窗体的Form_Load过程中添加以下代码:
01 Private objLoadComponent As LoadComponent
02 Private VBObj As Object
03 Private ComponentReader As MyComponentList
04
05 Private Sub VBTestDynamicForm_Load(……) Handles MyBase.Load
06 objLoadComponent = New LoadComponent()
07 ComponentReader = New MyComponentList("Componentlist.xml")
08 Dim filename As String
09 Dim classname As String
10 ComponentReader.beginRead()
11 filename = ComponentReader.getFileName(0)
12 classname = ComponentReader.getClassName(0)
13 Dim ret As Boolean
14 ret = objLoadComponent.LoadComponentLibrary(filename)
15 VBObj = objLoadComponent.LoadClass(classname)
16 VBObj.show()
17 End Sub
我们看见,第07--10句从配置文件中取出DLL文件名和类名,第11、12句获取第一个DLL文件名和类名,然后在第14句装入组件库,第15句装入对象,因为返回的对象其实是一个窗体,所以,在第16句可以直接调用Show()方法显示此窗体。
从代码中可以看见,在.NET中动态创建对象是多么地方便和简单!请注意:在工程中我们甚至不需要给工程添加对特定组件的引用!本例中动态创建的对象是窗体,而Form对象是缺省就可使用的。在真实工程中,可以把所有的接口放入一个特定的DLL中,我称之为“Facade Assembly”,其它工程只需引用这个DLL,则实现了这些接口的所有组件都可自由地通过名字来创建!
创建一个VB.NET Windows应用程序:VBTestDynamicComponent。将前面介绍的两个类ComponentList和LoadComponent加入到工程中。
我们在程序启动时从配置文件中读入相关的程序集信息和类名信息,为此在主窗体的Form_Load过程中添加以下代码:
01 Private objLoadComponent As LoadComponent
02 Private VBObj As Object
03 Private ComponentReader As MyComponentList
04
05 Private Sub VBTestDynamicForm_Load(……) Handles MyBase.Load
06 objLoadComponent = New LoadComponent()
07 ComponentReader = New MyComponentList("Componentlist.xml")
08 Dim filename As String
09 Dim classname As String
10 ComponentReader.beginRead()
11 filename = ComponentReader.getFileName(0)
12 classname = ComponentReader.getClassName(0)
13 Dim ret As Boolean
14 ret = objLoadComponent.LoadComponentLibrary(filename)
15 VBObj = objLoadComponent.LoadClass(classname)
16 VBObj.show()
17 End Sub
我们看见,第07--10句从配置文件中取出DLL文件名和类名,第11、12句获取第一个DLL文件名和类名,然后在第14句装入组件库,第15句装入对象,因为返回的对象其实是一个窗体,所以,在第16句可以直接调用Show()方法显示此窗体。
从代码中可以看见,在.NET中动态创建对象是多么地方便和简单!请注意:在工程中我们甚至不需要给工程添加对特定组件的引用!本例中动态创建的对象是窗体,而Form对象是缺省就可使用的。在真实工程中,可以把所有的接口放入一个特定的DLL中,我称之为“Facade Assembly”,其它工程只需引用这个DLL,则实现了这些接口的所有组件都可自由地通过名字来创建!
相关文章
- 《无限暖暖》天星之羽获得位置介绍 12-20
- 《流放之路2》重铸台解锁方法介绍 12-20
- 《无限暖暖》瞄准那个亮亮的成就怎么做 12-20
- 《无限暖暖》魔气怪终结者完成方法 12-20
- 《无限暖暖》曙光毛团获得位置介绍 12-20
- 《无限暖暖》日光果获得位置介绍 12-20