EventDrivenActivity Class

Note: This API is now obsolete.

Wraps an Activity whose execution is initialized by an event. This class cannot be inherited.

Namespace:   System.Workflow.Activities
Assembly:  System.Workflow.Activities (in System.Workflow.Activities.dll)

[ToolboxBitmapAttribute(typeof(EventDrivenActivity), "Resources.EventDriven.png")]
[ObsoleteAttribute("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public sealed class EventDrivenActivity : SequenceActivity


Initializes a new instance of the EventDrivenActivity class.


Initializes a new instance of the EventDrivenActivity class using the name of the activity.


Gets the object representing the collection, ActivityCollection, of all child activities.(Inherited from CompositeActivity.)


Gets or sets a value which controls whether the individual activities within Activities can be modified.(Inherited from CompositeActivity.)


Gets or sets the user-defined description of the Activity.(Inherited from Activity.)


Gets the value that indicates whether this instance is in design or run-time mode.(Inherited from DependencyObject.)


Gets or sets a value that indicates whether this instance is enabled for execution and validation.(Inherited from Activity.)


Gets the read-only collection that represents the subset of Activities that are enabled. (Inherited from CompositeActivity.)


Gets the event activity that drives the change.


Gets the ActivityExecutionResult of the last attempt to run this instance.(Inherited from Activity.)


Gets the current ActivityExecutionStatus of this instance.(Inherited from Activity.)


Gets information about whether the activity is executing within the default ActivityExecutionContext of the workflow instance.(Inherited from Activity.)


Gets or sets the name of this instance. This name must conform to the variable naming convention of the programming language that is being used in the Workflow project.(Inherited from Activity.)


Gets the CompositeActivity that contains this Activity.(Inherited from Activity.)


Gets the qualified name of the activity. Qualified activity names are always unique in a workflow instance.(Inherited from Activity.)


Gets or sets a reference to the Site component of the DependencyObject.(Inherited from DependencyObject.)


Gets an IDictionary that associates custom data with this class instance.(Inherited from DependencyObject.)

System_CAPS_pubmethodAddHandler(DependencyProperty, Object)

Adds a handler for an event of a DependencyObject.(Inherited from DependencyObject.)


Called by the workflow runtime to cancel execution of an activity that is currently executing.(Inherited from Activity.)


Creates a deep copy of the Activity.(Inherited from Activity.)


Releases all the resources used by the DependencyObject.(Inherited from DependencyObject.)


Determines whether the specified object is equal to the current object.(Inherited from Object.)


Called by the workflow runtime to execute an activity. (Inherited from Activity.)


Returns the instance of the Activity whose name is requested from the set of all activities running under the root activity of this instance, which is within the workflow.(Inherited from Activity.)

System_CAPS_pubmethodGetActivityByName(String, Boolean)

Returns the instance of the Activity whose name is requested from the set of all activities under the root the Activity of this instance if the second parameter is false and under the current Activity if the second parameter is true.(Inherited from Activity.)


Provides access to the ActivityBind associated with the specific DependencyProperty.(Inherited from DependencyObject.)


Serves as the default hash function. (Inherited from Object.)


Gets the Type of the current instance.(Inherited from Object.)


Provides access to the value of the designated DependencyProperty.(Inherited from DependencyObject.)


Provides access to the bound object of a DependencyProperty and bypasses the GetValue override.(Inherited from DependencyObject.)

System_CAPS_protmethodHandleFault(ActivityExecutionContext, Exception)

Called when an exception is raised within the context of the execution of this instance.(Inherited from CompositeActivity.)


Initializes all appropriate child activities of this instance and the specified IServiceProvider.(Inherited from CompositeActivity.)

System_CAPS_protmethodInvoke<T>(EventHandler<T>, T)

Subscribes an EventHandler and invokes that delegate.(Inherited from Activity.)

System_CAPS_protmethodInvoke<T>(IActivityEventListener<T>, T)

Subscribes an IActivityEventListener<T> and invokes that delegate.(Inherited from Activity.)


Indicates whether the value of a DependencyProperty is set as a binding. See SetBinding.(Inherited from DependencyObject.)


Determines whether the metaproperties of this DependencyObject equals the metaproperties of the parameterized DependencyObject.(Inherited from DependencyObject.)

System_CAPS_protmethodOnActivityChangeAdd(ActivityExecutionContext, Activity)

Calls when an activity is added.(Inherited from CompositeActivity.)

System_CAPS_protmethodOnActivityChangeRemove(ActivityExecutionContext, Activity)

Called when an activity is removed.(Inherited from CompositeActivity.)


Called by the workflow runtime engine every time the ActivityExecutionContext for this activity is loaded.(Inherited from CompositeActivity.)


Called by the workflow runtime engine every time the ActivityExecutionContext for this activity is unloaded.(Inherited from CompositeActivity.)


Called after changes have been made to the collection Activities of this instance.(Inherited from CompositeActivity.)

System_CAPS_protmethodRaiseEvent(DependencyProperty, Object, EventArgs)

Raises an Event associated with the specified dependency property.(Inherited from Activity.)

System_CAPS_protmethodRaiseGenericEvent<T>(DependencyProperty, Object, T)

Raises the event associated with the referenced DependencyProperty.(Inherited from Activity.)

System_CAPS_pubmethodRegisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)

Registers the specified DependencyProperty for the status change event.(Inherited from Activity.)

System_CAPS_pubmethodRemoveHandler(DependencyProperty, Object)

Removes an EventHandler from an associated DependencyProperty.(Inherited from DependencyObject.)


Removes a DependencyProperty from the DependencyObject.(Inherited from DependencyObject.)


Writes the Activity to a Stream for persistence.(Inherited from Activity.)

System_CAPS_pubmethodSave(Stream, IFormatter)

Writes the Activity to a Stream for persistence using the custom IFormatter provided for serialization.(Inherited from Activity.)

System_CAPS_pubmethodSetBinding(DependencyProperty, ActivityBind)

Sets the ActivityBind for the specified DependencyProperty. (Inherited from DependencyObject.)

System_CAPS_protmethodSetReadOnlyPropertyValue(DependencyProperty, Object)

Sets the value of a DependencyProperty, which is read-only.(Inherited from DependencyObject.)

System_CAPS_pubmethodSetValue(DependencyProperty, Object)

Sets the value of the DependencyProperty to the object.(Inherited from DependencyObject.)

System_CAPS_pubmethodSetValueBase(DependencyProperty, Object)

Sets the value of the DependencyProperty to the specified Object, bypassing the SetValue.(Inherited from DependencyObject.)


Provides a string that represents this instance.(Inherited from Activity.)


Called by the workflow runtime engine when an activity transitions into the Closed state from the Initialized state.(Inherited from CompositeActivity.)

System_CAPS_pubmethodUnregisterForStatusChange(DependencyProperty, IActivityEventListener<ActivityExecutionStatusChangedEventArgs>)

Un-registers the specified DependencyProperty for the status change event.(Inherited from Activity.)


Occurs when the activity execution is canceled. (Inherited from Activity.)


Occurs when an Activity has completed execution.(Inherited from Activity.)


Occurs when running a compensation method on the Activity.(Inherited from Activity.)


Occurs when the Activity is run.(Inherited from Activity.)


Occurs when an exception is raised during the running of the instance.(Inherited from Activity.)


Occurs when the ActivityExecutionStatus of a running Activity changes.(Inherited from Activity.)


Represents the method that handles the Disposed event of a component.(Inherited from DependencyObject.)

System_CAPS_pubinterfaceSystem_CAPS_privmethodIActivityEventListener<ActivityExecutionStatusChangedEventArgs>.OnEvent(Object, ActivityExecutionStatusChangedEventArgs)

Defines the processing procedure when the subscribed-to event occurs.(Inherited from SequenceActivity.)


This material discusses types and namespaces that are obsolete. For more information, see Deprecated Types in Windows Workflow Foundation 4.5.

It is a CompositeActivity that is used to handle an event; typically it can be raised from the host or by the runtime in response to a delay timer expiring. EventDrivenActivity is inherited from SequenceActivity; therefore, it is a sequence that has the additional restriction that the first activity should be an IEventActivity.

The EventDrivenActivity is a CompositeActivity, which means the EventDrivenActivity can contain other activities. The EventDrivenActivity is similar to the SequenceActivity activity, with some additional characteristics.

An EventDrivenActivity must have a parent that is either a ListenActivity, StateActivity, or StateMachineWorkflowActivity.

The first child of an EventDrivenActivity activity must be an activity that inherits from IEventActivity. All subsequent children can be activities of any type. The IEventActivity blocks and waits for the pending occurrence of some events, such as starting a timer or the arrival of a message. When the event occurs, the IEventActivity finishes running and then all subsequent activities are executed.

When the StateMachineWorkflowActivity contains an EventDrivenActivity, the EventDrivenActivity has some restrictions:

For example, an activity that supports event handling can be used inside the EventDrivenActivity but the activity cannot have event handlers attached to itself.

Another example is that the EventDrivenActivity can contain a ConditionedActivityGroup, but the ConditionedActivityGroup itself cannot contain any HandleExternalEventActivity classes.

The following code example shows how to use the EventDrivenActivity to perform state machine transitions. This code example is part of the SimpleStateMachineWorkflow SDK sample from the StateMachineWorkflow.cs file. For more information, seeSimple State Machine.

this.state1Delay = new System.Workflow.Activities.DelayActivity();

.NET Framework
Available since 3.0

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

System.Workflow.Activities Namespace
Using the EventDriven Activity

Return to top