public void Execute(object sender, System.Type actionType, params object[] actionParams) { IAction action = Activator.CreateInstance(actionType, actionParams) as IAction; action.Execute(sender); Executed.Push(action); OnExecute(this, new EventArgs()); }