private void OnStatusMessageReceived(StatusMessage message) { var statusVM = Messages.FirstOrDefault(x => x.StatusMessageId == message.StatusMessageId); if (statusVM == null) { var item = new StatusMessageViewModel { ShortText = message.ShortText, StatusMessageId = message.StatusMessageId, Progress = message.CanReportProgress ? message.Progress : 100, IsProgressVisible = message.CanReportProgress, State = message.State, Details = message.Details }; Messages.Add(item); // display details for the very first message if (!_hasFirstMessageReceived) { _hasFirstMessageReceived = true; IsDetailsVisible = true; } } else { statusVM.Details = message.Details; if (!string.IsNullOrEmpty(message.ShortText)) { statusVM.ShortText = message.ShortText; } if (statusVM.IsProgressVisible) { statusVM.Progress = message.Progress; } statusVM.State = message.State; } UpdateStatuses(); }
private void OnStatusMessageReceived(StatusMessage message) { var statusVM = Messages.FirstOrDefault(x => x.StatusMessageId == message.StatusMessageId); if (statusVM == null) { var item = new StatusMessageViewModel { ShortText = message.ShortText, StatusMessageId = message.StatusMessageId, Progress = message.CanReportProgress ? message.Progress : 100, IsProgressVisible = message.CanReportProgress, State = message.State, Details = message.Details }; Messages.Add(item); // display details for the very first message if (!_hasFirstMessageReceived) { _hasFirstMessageReceived = true; IsDetailsVisible = true; } } else { statusVM.Details = message.Details; if (!string.IsNullOrEmpty(message.ShortText)) statusVM.ShortText = message.ShortText; if (statusVM.IsProgressVisible) statusVM.Progress = message.Progress; statusVM.State = message.State; } UpdateStatuses(); }