SetStateEventArgs Class
Represents a class that is used as an argument to set the state of a StateMachineWorkflowActivity.
Assembly: System.Workflow.Activities (in System.Workflow.Activities.dll)
| Name | Description | |
|---|---|---|
![]() | SetStateEventArgs(String^) | Initializes a new instance of the SetStateEventArgs class. |
| Name | Description | |
|---|---|---|
![]() | TargetStateName | Gets the state to set the StateActivity to. |
| Name | Description | |
|---|---|---|
![]() | Equals(Object^) | Determines whether the specified object is equal to the current object.(Inherited from Object.) |
![]() | Finalize() | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.(Inherited from Object.) |
![]() | GetHashCode() | Serves as the default hash function. (Inherited from Object.) |
![]() | GetType() | |
![]() | MemberwiseClone() | |
![]() | ToString() | Returns a string that represents the current object.(Inherited from Object.) |
Note |
|---|
This material discusses types and namespaces that are obsolete. For more information, see Deprecated Types in Windows Workflow Foundation 4.5. |
The StateMachineWorkflowActivity allows for setting the state from the host application. This enables the host application to override the current state of a state machine. This can be accomplished by enqueuing an instance of the SetStateEventArgs class to the WorkflowQueue named by the constant StateMachineWorkflowActivity::SetStateQueueName.
A simpler way to accomplish this is to use the SetState method in the StateMachineWorkflowInstance class.
You can use the SetState method to perform a SetState operation from the host, or you can do it yourself by enqueuing an event to the state machine workflow as shown in the following example.
public void SetState(string targetStateName)
{
if (targetStateName == null)
{
throw new ArgumentNullException("targetStateName");
}
SetStateEventArgs args1 = new SetStateEventArgs(targetStateName);
this.WorkflowInstance.EnqueueItemOnIdle("SetStateQueue", args1, null, null);
}
The state machine workflow uses a special queue called SetStateQueue to listen to these special events.
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.



