public void ExecuteOperation(OperationBase operation) { Pending.Add(operation); operation.Finished += operation_Finished; operation.Error += operation_Error; if (operation.IsComplexOperation) { operation.Progressed += operation_Progressed; } AreAnyOperationsOngoing = true; operation.Start(); }