Book Image

Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#

By : Kenneth Scott Allen
Book Image

Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#

By: Kenneth Scott Allen

Overview of this book

Windows Workflow Foundation (WF) is a technology for defining, executing, and managing workflows. It is part of the .NET Framework 3.0 and will be available natively in the Windows Vista operating system. Windows Workflow Foundation might be the most significant piece of middleware to arrive on the Windows platform since COM+ and the Distributed Transaction Coordinator. The difference is, not every application needs a distributed transaction, but nearly every application does have a workflow encoded inside it. In this book, K Scott Allen, author of renowned .NET articles at www.odetocode.com, provides you with all the information needed to develop successful products with Windows Workflow. From the basics of how Windows Workflow can solve the difficult problems inherent in workflow solutions, through authoring workflows in code, learning about the base activity library in Windows Workflow and the different types of workflow provided, and on to building event-driven workflows using state machines, workflow communications, and finally rules and conditions in Windows Workflow, this book will give you the in-depth information you need. Throughout the book, an example "bug reporting" workflow system is developed, showcasing the technology and techniques used.
Table of Contents (14 chapters)
Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#
Credits
About the Author
About the Reviewer
Preface

Objects and Their Relationships


A workflow ultimately becomes a group of managed objects in memory. The trick is to arrange the objects in a relationship so they can perform useful work. This trick isn't specific to workflow software. Consider some code from a Windows application:

button1 = new System.Windows.Forms.Button();
button1.Location = new System.Drawing.Point(13, 13);
button1.Name = "button1";
button1.Size = new System.Drawing.Size(75, 23);
button1.Text = "Click Me!";
this.Controls.Add(this.button1);

This code is similar to the code we saw in the InitializeComponent method the workflow designer created earlier. Instead of arranging activities, this code is arranging user interface controls. The code creates a Button object and sets some properties so the button will appear visually appealing. This code lives inside a class derived from System.Windows.Forms.Form. The most important line of code is adding the button object to the form's Controls collection: this.Controls.Add(this...