(WF4, Toolbox) Updating the WF4 Toolbox Icon FAQ (for Rehosting and Custom Activities)

Introit – call it whatever, but today I’m recycling an old post. And I have one more little confession. When I started writing a new rehosted app today, I found out my old toolbox FAQ was fairly useless. It was even getting to the point where someone had to post this in the forum: “I…


(WF4) Showing an InArgument<bool> as a CheckBox in the Workflow Designer Property Grid

Here’s a workflow designer FAQ finally getting the attention it deserves, and helping show off how to do custom property editing in designer. “How do I show an InArgument<bool>/<enum> in the property grid as a checkbox/combobox?”   [Aside: Before we start the guide, note that actually doing the thing you are asking about has certain…


(WF4) Workflow 4.0 Hosting Extensions

[Update:Dear Readers,To those of you who found this post interesting, but still a little too vague on how exactly you can use extensions for workflow-host communications, how this ties in with bookmarking, or what might be involved in implementing your own custom Send/Receive semantics in a workflow activity, you may enjoy the sequel post ‘Workflow 4.0…


An Activity Designer for InvokeAction<T>

[Update! There are some bugs with the attached code, see the sequel post for discussion of bug fixes.] My workmate Ramraj mentioned that a long way back (during earlier milestones of WF 4.0) something was invented for XAML called a property reference, which was a feature that in the workflow designer would enable creating custom XAML…


Fun with Bookmarks: Implementing Continue and Break

A few people have noticed in the Workflow Foundation Beta 2 forums that the looping constructs provided in System.Activities.Statements such as While activity, ForEach activity, and ParallelForEach lack certain features found in their C# counterparts – there is no break or continue statement. This seemed like an interesting problem – how can we implement these missing features…


Freeform Custom Activity Designers using ICompositeView (Part 2)

This post is Part 2 of a series on writing custom activity designers. [Part 1 – Part 2 – Part 3 – Part 4 – Part 5] Last time we found out that ICompositeView.OnItemsDelete() will never get called – unless we tell our contained activities exactly which composite view they belong to. But we didn’t…


Freeform Custom Activity Designers using ICompositeView

[This post is Part 1 of a series on writing custom activity designers. Part 2 – Part 3 – Part 4 – Part 5 – Part 6 – Part 7] Motivation: Building an activity like Flowchart Creating composite activities and designers in Workflow Foundation 4.0 is really easy when you use WorkflowItemPresenter and WorkflowItemsPresenter. (Seriously….