最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
基于组件的.NET软件开发(4)
时间:2022-07-02 12:01:01 编辑:袖梨 来源:一聚教程网
设计示例用到的组件
创建两个VB.NET类库工程:DynamicComponent和VBDynamicComponent2,分别创建两个窗体VBForm1和VBForm2(如图6图7所示),前者放在DynamicComponent工程中,后者放在VBDynamicComponent2工程中。
分别编译生成两个DLL文件:DynamicComponent.dll和VBDynamicComponent2.dll。
接着,我们创建一个Windows应用程序VBTestDynamicComponent用于测试我们的组件装配技术。
读取XML配置文件
在测试程序启动时,它从XML配置文件中读取信息,我们看到,相关信息可以分为两类:一类是要装入的DLL文件清单,另一类是需要装入的类名。这两者是一一对应的,所以,我们可以创建两个ArrayList,一个用于存放文件名,一个用于存放类名,然后,用一个类MyComponentList把这两个ArrayList给封装起来,外部使用者只需给出索引,就可以马上同时得到文件名与类名。
类的接口设计如下:
图 9 用于实现动态装入组件的类
参见图9,只要给MyComponentList类的对象指定一个XML配置文件名,再调用beginRead(),调用者就可以通过索引(0,1,2……)来获取文件名和类名。
读取XML格式数据可以使用.NET framework所提供的XmlTextReader类。完整代码如下:
'从XML配置文件中读取组件的类名与文件名
Imports System.Collections.Specialized
Imports System.Windows.Forms
Public Class MyComponentList
Private xmlreader As Xml.XmlTextReader
Private _FileName As String 'XML配置文件名
Private _ComponentFileName As String '组件库文件名
Private _ComponentName As String '组件库中的类名
Private componentNames As ArrayList '存放配置文件中列出的所有组件类名
Private componentFiles As ArrayList '存放配置文件中列出的所有组件库名
创建两个VB.NET类库工程:DynamicComponent和VBDynamicComponent2,分别创建两个窗体VBForm1和VBForm2(如图6图7所示),前者放在DynamicComponent工程中,后者放在VBDynamicComponent2工程中。
分别编译生成两个DLL文件:DynamicComponent.dll和VBDynamicComponent2.dll。
接着,我们创建一个Windows应用程序VBTestDynamicComponent用于测试我们的组件装配技术。
读取XML配置文件
在测试程序启动时,它从XML配置文件中读取信息,我们看到,相关信息可以分为两类:一类是要装入的DLL文件清单,另一类是需要装入的类名。这两者是一一对应的,所以,我们可以创建两个ArrayList,一个用于存放文件名,一个用于存放类名,然后,用一个类MyComponentList把这两个ArrayList给封装起来,外部使用者只需给出索引,就可以马上同时得到文件名与类名。
类的接口设计如下:
图 9 用于实现动态装入组件的类
参见图9,只要给MyComponentList类的对象指定一个XML配置文件名,再调用beginRead(),调用者就可以通过索引(0,1,2……)来获取文件名和类名。
读取XML格式数据可以使用.NET framework所提供的XmlTextReader类。完整代码如下:
'从XML配置文件中读取组件的类名与文件名
Imports System.Collections.Specialized
Imports System.Windows.Forms
Public Class MyComponentList
Private xmlreader As Xml.XmlTextReader
Private _FileName As String 'XML配置文件名
Private _ComponentFileName As String '组件库文件名
Private _ComponentName As String '组件库中的类名
Private componentNames As ArrayList '存放配置文件中列出的所有组件类名
Private componentFiles As ArrayList '存放配置文件中列出的所有组件库名
相关文章
- 绯月絮语阵容怎么搭配 绯月絮语阵容搭配推荐 12-23
- 千机阵在哪预约 千机阵预约入口 12-23
- 千机阵官网网址是什么 千机阵官网入口 12-23
- 塞尔达无双封印战记疾风突击使用指南 疾风突击怎么用 12-23
- 艾尔登法环黑夜君临据点怎么选 四大据点主要情况介绍 12-23
- 艾尔登法环黑夜君临符文怎么获得 如何获得强力符文 12-23