WF随笔系列之三 Code Activity 专题

系列目录:WF随笔系列之三 Out-of-the-Box Activities 专题目录

    Code Activity是WF开发中使用最频繁的Activity之一,它要做工作的很简单,就是把一个或者几个Code Exec 一下,当此行为在执行时,触发一个Handlers:ExecuteCode. 
 
1.Code Activity 简单应用
*此Code,看看即可
public sealed partial class Workflow1 : SequentialWorkflowActivity
 
{
 
public Dictionary<intstring> nameList = new Dictionary<intstring>();

 
public string BadFriend;
 
public string CloseFriend;

 
public Workflow1()
 
{
            InitializeComponent();

            nameList.Add(
1"Andy");
            nameList.Add(
2"Jacky");
            nameList.Add(
3"FUChen");
            nameList.Add(
4"Brian");

        }


 
private void codeActivity1_ExecuteCode(object sender, EventArgs e)
 
{
            Console.WriteLine(
"Enter Name : ");
 
string friend = Console.ReadLine();

            Console.WriteLine(
"Enter Bad Friend :");
 
this.BadFriend = Console.ReadLine();
            Console.WriteLine(
"Enter Close Friend :");
 
this.CloseFriend = Console.ReadLine();
        }

    }
 

2.Code Activity 自定义应用之自定义属性
    创建一个ActivityLibrary,创建完成把BaseClass选择为: System.Workflow.ComponentModel.Activity
既然要自定义,创建属性是一定不能少的。
创建属性:
     在较早的版本中是可以进行可视化创建Propertys的,那现在的版本已经采用Code Snippets方式进行创建Custom Property.

具体操作:Ctrl+k Ctrl+X ,选择workflow,DependencyProperty-Property即可生成代码

codesnippet CodeSnippetProperty PropertyCode

另外提一下:在类顶部加上ToolboxBitmap可以改变CodeActivty上面显示图示,喜欢自定义图标同志一定喜欢此属性

[ToolboxBitmap(typeof(CodeActivityClass), "XXX.png")] 

还有此属性,起什么作用呢,起可编辑的呗。

[Editor(typeof(MultilineStringEditor), typeof(UITypeEditor))] 

最后效果图:

图示1 的Attribute,Code都是自定义上去的。

当然对自定义属性进行其他操作如图示2 ,具体用法,有兴趣可以研究研究。

图示1                            图示2

Propety BindCode

原文地址:https://www.cnblogs.com/RuiLei/p/943656.html