public Sample() { InitializeComponent(); stateMachineBuilder = new StateMachineBuilder(); stateMachineBuilder.AddState(States.Green) .TransitionOn(Events.Change, States.Yellow) .OnEnter(s => Invoker(() => pnlGreen.BackColor = GreenOn)) .OnExit(s => Invoker(() => pnlGreen.BackColor = GreenOff)) .Timeout(3000, States.Yellow) .InitialState(); stateMachineBuilder.AddState(States.Yellow) .TransitionOn(Events.Change, States.Red) .Timeout(3000, States.Red) .OnEnter(s => Invoker(() => pnlYellow.BackColor = YellowOn)) .OnExit(s => Invoker(() => pnlYellow.BackColor = YellowOff)); stateMachineBuilder.AddState(States.Red) .TransitionOn(Events.Change, States.Green) .Timeout(3000, States.Green) .OnEnter(s => Invoker(() => pnlRed.BackColor = RedOn)) .OnExit(s => Invoker(() => pnlRed.BackColor = RedOff)); stateMachine = new StateMachine("StopLight", stateMachineBuilder); stateMachine.Asynchronous(); }