您的位置:首页 > 其它

写了一个类似于安装程序向导的组件

2005-07-03 22:44 567 查看
最近做的项目中,很多界面是提供给用户定制的,就像安装程序一样,给用户来一步一步的执行,而这些应用中,界面有很大的不同,而制定过程中的逻辑与数据的存储也都不一样,但是其中的共同点就是都有向导的基本按钮,即上一步,下一步,完成,取消。于是写了这么一个向导组件,其作用就是使开发者在做向导界面时,不必再关心一些基本的操作,只将其每一步骤的界面定义好,并通过向导组件实现UI的加载与逻辑的实现。
使用方法

将wizard.dll引用到项目中,在HALABAZI的命名空间下有三个类Wizard WizardStepBase WizardStepList。其中wizard继承自UserControl ,像使用其它组件一样,把Wizard组件放到所需要放置向导的窗体或容器上,所有的向导步骤都在这一个组件上进行加载
wizard交出了四个事件,preSetpEvent,nextStepEvent,finishEvent,cancelEvent。分别是点四个按钮时的四个事件。
还有一个StepData的属性,StepData是一个哈希表,用来存放一些全局的数据使用

然后定制好所有步骤,每一个步骤都定制成一个用户控件,但改变其继承类为WizardStepBase,WizardStepBase是作为所有步骤的基类来使用的。

在步骤的编写中,有以下说明

1. 每一步都有一个入口,要重写基类的Run方法,里面可以放一些对于该步骤初始化的一些工作

2. 指定下一步是哪一步,要重写基类的GetNextStep方法,返回一个整形,必须要有此方法

3. 指定此步骤是否可以点完成,要重写基类的CanOver方法,返回一布尔值,如不重写,默认为false

4. 可以设置canNext与canPre的值来控制是否能点上一步,或下一步

5. 如果重写的CanOver或改变了canNext,canPre,一定要调用基类的onChange方法,来刷新界面

最后在调用向导前,首选将所有的步骤实例化,然后调用wizard. StepList.Add方法将所有控件添加到wizard当中,并调用wizard.Run来指定第一个运行哪一步

整个组件的代码与测试用的例子:Wizard.rar
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐