使用silverlight构建一个图形化流程设计器(一)

前言

Silverlight发布已经很久了,具体是什么就不多说,大家一定很清楚。最关心的就是其中的跨浏览器能力,以及强大的用户界面表现能力。于是决定使用它来实现一个流程设计工具,以替代以前的流程设计器(原来是用vml实现,只能在IE浏览器上工作),因为第一次接触silverlight,在学习、工作的过程中肯定会遇到很多的问题,将这个学习新知识、解决问题的过程记录下来,肯定能找到许多志同道合的朋友,也请大家抱着这种态度阅读本文。

本文主要讲述使用vs.net2008开发一个基于silverlight的流程设计器。

在进入正文之前,先说一下开发环境的配置。使用vs.net2008作为开发工具,需要下载一个Silverlight tools for virsual studio 2008 sp1,地址在http://silverlight.net/GetStarted/,安装后就可以使用vs.net2008来开发silverlight应用了。

本系列文章包含以下几部分(可能有变)。

系统范围

系统设计

类设计

Xml设计

美化

重构

一、系统范围

在开始之前,先来看一下系统将要完成什么样的功能。具体来说,这样的流程设计器应该具有以下的特点:

图形化的方式显示流程

支持拖拽创建和修改流程

导出图形对应的xml描述文件

根据流程xml描述文件显示流程图

注意:本文只将焦点放置在图形的描述上,不涉及流程的各种属性,不过您完全可以在此基础上创建一个包含流程属性设置的应用程序。另外,本文是随着程序的编写进度而撰写的,程序在不断的完善,本文也将不断的修改完善。在这个过程中将随时提供可以运行的程序供下载。

下面的图形具体的显示了系统将要完成的功能:

时间: 2024-11-03 16:57:14

使用silverlight构建一个图形化流程设计器(一)的相关文章

使用silverlight构建一个图形化流程设计器(二)

本文配套源码 接着之前的内容,在开始之前有几点说明: 1.我无法使用博客圆的上传图片功能,因此许多图片就省略了. 2.代码放在codeplex上(http://workflowdesigner.codeplex.com/),如果您有兴趣的话,欢迎加入一起开发. 3.在线演示:http://219.153.66.61/wf 三.类的设计 在进行类设计之前,先说一下silverlight中使用怎么表示上面描述的类.在silverlight可以使用 用户控件( silverlight user con

使用silverlight构建一个工作流设计器(十八)-持久化数据到数据库

使用silverlight构建一个工作流设计器(十八)-持久化数据到数据库-服务器段功能实现 17.3 服务器端代码实现 服务器端的功能是将数据保存到数据库,以及从数据库中取出xml描述文件返回给客户端.本文使用LINQ to SqClasses的方法对数据库进行操作.如下图所示,增加一个linq的类 然后在左边的数据库链接管理器中,增加一个数据库链接,如下图所示:

使用silverlight构建一个工作流设计器(十七)-持久化数据到数据库

使用silverlight构建一个工作流设计器(十七)-持久化数据到数据库-设计webservices接口 在开始之间,先说下程序增加的一个小功能,就是给容器增加网格线的功能,使得容器看上去类似下面的样子 当然可以有两种方法来实现,一种就是使用背景图片,但本文一贯的原色就是少用图片,多用silverlight的画图功能来实现,这些网格都可以使用xaml中的Line对象来实现.为此我们需要动态设定一个Canvas,然后把这些动态生成的Line对象添加到Canvas中,最后再把Canvas添加到容器

使用silverlight构建一个工作流设计器(十六)-持久化数据到数据库—数据库结构

16.1 数据结构 目前的流程信息没有保存到任何一个可持久化的环境中,根据网友建议,增加存储工作流xml文件的功能.这个功能使用数据库来实现,您也可以有更多的持久化方式. 根据工作流引擎的实现不同,有些引擎只需要xml文件配置就可以了,有些引擎需要建立数据库的模型.在本文中,假设工作流引擎是跟数据库相关的. 整个持久化流程是这样的: 从使用webservices从服务器下载相应的流程xml描述(或者新建一个流程) 在客户端使用流程设计器进行流程设计或者修改,此时任何修改都在本地完成 在用户点击保

《C语言编程魔法书:基于C11标准》——1.5 用C语言构建一个可执行程序的流程

1.5 用C语言构建一个可执行程序的流程 从用C语言写源代码,然后经过编译器.连接器到最终可执行程序的流程图大致如图1-2所示. 从图1-2中我们可以清晰地看到C语言编译器的大致流程.首先,我们先用C语言把源代码写好,然后交给C语言编译器.C语言编译器内部分为前端和后端.前端负责将C语言代码进行词法和语法上的解析,然后可以生成中间代码.中间代码这部分不是必须的,但是它能够为程序的跨平台移植带来诸多好处.比如,同样的一份C语言源代码在一台计算机上编译完之后,生成一套中间代码.然后针对不同的目标平台

linux服务器下运行一个图形化的Java程序

问题描述 linux服务器下运行一个图形化的Java程序 安装一了一个纯命令行的Ubuntu服务器系统,在windows下用netbeans 做 了一个图形化Java程序.服务器下的jdk以安装.在运行这个打包好的java程序时出现错误.说是需要libX....等很多包. 估计是需要安装图形化包,那么怎么安装这些包呢,服务器不能连接互联网.如果有这些包,从哪里下载呢? 解决方案 不能连网,那还是重装下系统比较简单.找一个带xwindow的ubuntu标准版 解决方案二: ubuntu服务器版本不

[jBPM系列]jBPM的流程设计器(GPD)在Eclipse里的安装

inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ). 流程设计器(GPD)是jBPM的一个eclipse插件,用于图形化设计工作流程.这里介绍如何在eclipse里安装GPD.示例中使用jBPM 4.3+eclipse 3.5.eclipse建议使用Eclipse IDE for Java EE Developers或Eclipse IDE for Java and Report Developers.(来源:http://blog

Activiti实战. 3.3基于Eclipse插件的流程设计器Activiti Designer

3.3基于Eclipse插件的流程设计器Activiti Designer 在客户的需求确定之后,由业务人员利用Activiti Modeler设计完业务流程,此时可以将设计结果导出为bpmn20.xml文件,之后由开发人员继续基于设计进一步添加涉及技术细节的配置,例如排他分支的条件.Java服务.任务监听器等. 3.3.1Activiti Designer特点 Java程序员每天工作使用的主要工具是IDE,而应用最广泛的IDE当然是Eclipse,任何开发人员都可以很容易地开发Eclipse的

WF4.0 流程设计器例子 (提供状态机模板)

WF4.0 的流程设计器,可根据流程启参数自动构建启动窗体, 根据Bookmark自动构建提交窗体,可保存,加载,调试VS2010设计的工作流文件,提供可视化的流程测试界面,可设计WF4.0的顺序工作流,FlowChar工作流,状态机工作流(注: WF4.0默认没有提供状态机,本例中的状态机是根据WF State Machine Activity Pack源代码修改实现的) 状态机模板 测试例子 打开测试流程 启动测试流程 跟踪,运行信息 本文示例源代码或素材下载