zoukankan      html  css  js  c++  java
  • 用WF流程控制WPF动画

    用WF流程控制WPF动画

    这次的主题是WF不只是审批

    本文用一个小例子演示了在WF中定义动做步骤,用来控制WPF页面元素的动画

    这个例子的目的是为了让大家从另一个角度了解WF的应用,不要一提到WF就想到审批平台,

    WF是一个流程控制引擎,非常适合开发与流程控制相关的业务,如果你的业务逻辑比较复杂,而且业务逻辑需要经常修改,或者需求就要求提供一个可自定义业务逻辑的接口,比如:

    • 审批,流程类业务系统
    • 工控系统
    • 与逻辑算法相关的人工智能系统,搜索引擎,数据处理分发系统
    • 设备的运行状态UI展现
    • 导航系统的摄影机路线与节奏控制
    • 游戏中的剧情控制
    • 游戏中人物的动件组合

    那你可以考虑一下WF,至少可以借鉴一下WF的思路

     

    本文例子下载: https://files.cnblogs.com/wxwinter/WFWPF.rar

    先看一下例子的效果

     

     

    流程

     

    控制说明

     

     

    程序说明

    没什么好说的,下图中程序结构,全部代码没的超过50行,

    有一点要说明一下,我为WorkflowRuntime添加了ManualWorkflowSchedulerService,这样就解决了跨线程访问UI的问题,关于ManualWorkflowSchedulerService我已有多篇文章做过详细说明,这里就不再说了

    还用,用ManualWorkflowSchedulerService决了跨线程访问UI的问题是我偷懒的做法,如果真的要做图形动做引擎,不建议用这种方式

     

     

     

    总结说明

    可以将工作流设计成XOML字串格式的,并提供一个动做流程设计器

     

    可以在动做流程设计器中用基本的[动做Activity]组合复杂的动做,也可以开发一些特殊动做的Activity,如[转体360度Activity],[眼睛蛇动做Activity]

     

     

    最后:

    本文不是要介绍图形动做引擎,本文想说明的是:

    WF不只是审批,

    流程逻辑控制与实体对象分离,逻辑控制可跟据需要进行后期设计,而不修改实体对象

    这是一种设计思想,WF只是实现这种设计思想的一个开发包

     

     

     

  • 相关阅读:
    hdu2049.java
    java输入输出流小细节
    滚动字幕
    hdu4504java
    HDU2054JAVA
    hdu2058java
    hdu2073递推题
    [转]SELinux管理与配置
    Can't connect to MySQL server on 'XXX' (13)
    CentOS6.5+php5.3听云安装过程
  • 原文地址:https://www.cnblogs.com/foundation/p/1336392.html
Copyright © 2011-2022 走看看