• Rehosting WWF Designer 之定制活动的外观


    本文的主要目的为:在Rehost WWF Designer后,我希望用户看到的是更为专用化的设计器而不是由微软所提供的缺省的E文提示(至少当前版本是这样子的)。因为工作繁忙,本文所指的外观设计并不全面,只局限于标题和文字,还希望大家原谅。不过就一般的应用而言,我想这些能满足大部分需求。

    让我们先来了解一下定制外观的基础,当我们想对某一个活动的外观进行定制时,我们必须为其指定一个自定义的Designer, 因为其中的外观属性基本上是Protected属性的。所有的外观特性都由Designer来提供,如活动中心的提示信息,标题中的文本,边框,底色等等。其中的一些是在Designer中指定ActivityDesignerThemeAttribute属性来实现的。将Designer应用到我们自定义的活动上面去,我们就可以看到这些效果了。示例如下:

    [Designer(typeof(MySequentialWorkflowActivityDesigner), typeof(IRootDesigner))]

        public class MySequentialWorkFlowActivity : SequentialWorkflowActivity

        {

    }

    其中MySequentialWorkFlowActivity为我们自定义的活动。MySequentialWorkflowActivityDesigner为我们自定义的设计器(应该称之为外观设计器可能更好一些)。IRootDesigner则说明这是一个根控件。对于WWF来讲这是我们的设计器中的第一个控件。如果不是根控件,如CodeActivity则应将其替换为IDesigner

    进入我们的正题,

    现在让我们来改变SequentialWorkflowActivit的标题和帮助文本。

    SequentialWorkflowRootDesigner继承一个自定义的Designer

    重载并实现下面的方法。

     

            // 改变帮助提示信息

            protected override string HelpText

            {

                get{return Res.WF_HelpText; }

                set{base.HelpText = value; }

            }

     

            // 改变标题

            protected override SequentialWorkflowHeaderFooter Header

            {

                get

                {

                    base.Header.Text = Res.WF_Text;

                    return base.Header;

                }

            }

    注意:在Designer中有一个Text属性,不能将它作为标题进行使用!

    其它活动的Designer可以通过继承ActivityDesigner来实现。一般情况下自定义活动的名字被显示在活动的中心位置。如果想拥有活动的英文名字,但显示是汉字内容则可以通过实现其Designer中的Text属性来解决,这里就不多做说明了。
      有关Rehosting WWF Designer的文章请参阅我的另外几篇文章:
      WWF的一些技术细节与应用体会(一)
      WWF的一些技术细节与应用体会(二)
      Rehosting WWF 设计器 之运行时定制活动的外观
      Rehosting WWF Designer 之定制活动的外观
      
    Rehosting WWF Designerp之从工具箱拖动活动到设计器上
      Rehosting WWF 设计器

  • 相关阅读:
    窗口切换快捷键
    简单排序算法
    (转)Zen Coding 让 Notepad++ 代码书写健步如飞
    (转)图解SQL的Join
    第6章 AJAX
    今天是五四青年节
    看到的php的小知识
    (转)Notepad++配合QuickText打造快速高效的文本编辑器
    一种非常好的产生"唯一"临时文件的办法
    (转)linux 目录结构及其含义
  • 原文地址:https://www.cnblogs.com/llxxbb/p/RehostWWFDesigner3.html
Copyright © 2020-2023  润新知