/// <summary>
 ///     Constructor
 /// </summary>
 /// <param name="messageBus"></param>
 public ResultsPaneViewModel(IMessageBus messageBus)
 {
     _messageBus           = messageBus;
     _stringBuilder        = new StringBuilder();
     TransactionOutputList = new ObservableCollection <OutputViewModel>();
     ElapsedTimerViewModel = new ElapsedTimerViewModel(_messageBus);
 }
        private string CalculateElapsedTime(IElapsedTimerViewModel vm)
        {
            var displayTime = $"{vm.ElapsedTime.Minutes}:{vm.ElapsedTime.Seconds:00}:{vm.ElapsedTime.Milliseconds.ToString("000").Substring(0, 2)}";

            if (TransactionOutputList.Any())
            {
                var lastAdded          = TransactionOutputList.Last();
                var recordedTimeSpan   = lastAdded.ElapsedTimeSpan;
                var currentTimeSpan    = vm.ElapsedTime;
                var subtractedTimeSpan = currentTimeSpan.Subtract(recordedTimeSpan);
                if (subtractedTimeSpan != TimeSpan.Zero)
                {
                    // We have a new time
                    displayTime = $"{subtractedTimeSpan.Minutes}:{subtractedTimeSpan.Seconds:00}:{subtractedTimeSpan.Milliseconds.ToString("000").Substring(0, 2)}";
                }
            }
            return(displayTime);
        }