Exemplo n.º 1
0
        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();
		}