/// <summary>
 /// Fire Duplicate Action Event
 /// </summary>
 protected virtual void OnDuplicateAction(object sender, ActionEditorControlEventArgs args)
 {
     try
     {
         DuplicateAction?.Invoke(sender, args);
     }
     catch (Exception caught)
     {
         logger.Error("Unexpected Error Firing Duplicate Action Event", caught);
         throw;
     }
 }
 /// <summary>
 /// Handles Duplicate Action Click
 /// </summary>
 /// <param name="sender">The Sender</param>
 /// <param name="e">The Event Arguments</param>
 private void HandleDuplicateActionClick(object sender, EventArgs e)
 {
     try
     {
         var eventArguments = new ActionEditorControlEventArgs {
             Action = SourceAction
         };
         OnDuplicateAction(this, eventArguments);
     }
     catch (Exception caught)
     {
         logger.Error("Unexpected Error Handling Duplicate Action Click", caught);
         throw;
     }
 }