/// <summary> /// Shows the messages. /// </summary> public void RefreshView() { IncomingMessage selectedMsg = lvwMessages.SelectedObject as IncomingMessage; lvwMessages.BeginUpdate(); lvwMessages.ClearObjects(); IOrderedQueryable <IncomingMessage> results = IncomingMessage.All().Where(msg => msg.Status == StringEnum.GetStringValue(MessageStatus.Archived)).OrderByDescending(msg => msg.ReceivedDate); List <IncomingMessage> messages = new List <IncomingMessage>(results.AsEnumerable()); lvwMessages.SetObjects(messages); if (messages.Count() == 0) { lvwMessages.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); } else { lvwMessages.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); } if (selectedMsg != null) { lvwMessages.SelectObject(selectedMsg); } lvwMessages.EndUpdate(); lvwMessages.Refresh(); }
/// <summary> /// Polls the message. /// </summary> /// <param name="obj">The object</param> private void PollMessages(object obj) { IOrderedQueryable <IncomingMessage> results = IncomingMessage.All().Where (msg => (string.IsNullOrEmpty(msg.Status) || msg.Status == StringEnum.GetStringValue(MessageStatus.Received)) && msg.LastUpdate > this.lastUpdateTimestamp).OrderByDescending(msg => msg.ReceivedDate); if (results.Count() > 0 && !this.Enabled) { RefreshView(); } }
/// <summary> /// Shows the messages. /// </summary> public void RefreshView() { if (this.lvwMessages.InvokeRequired) { SetListCallback callback = new SetListCallback(RefreshView); this.Invoke(callback); } else { IncomingMessage selectedMsg = lvwMessages.SelectedObject as IncomingMessage; lvwMessages.BeginUpdate(); lvwMessages.ClearObjects(); IOrderedQueryable <IncomingMessage> results = IncomingMessage.All().Where (msg => string.IsNullOrEmpty(msg.Status) || msg.Status == StringEnum.GetStringValue(MessageStatus.Received)).OrderByDescending(msg => msg.ReceivedDate); List <IncomingMessage> messages = new List <IncomingMessage>(results.AsEnumerable()); lvwMessages.SetObjects(messages); if (messages.Count() == 0) { lvwMessages.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); } else { lvwMessages.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); } if (selectedMsg != null) { lvwMessages.SelectObject(selectedMsg); } lvwMessages.EndUpdate(); lvwMessages.Refresh(); if (messages.Count() > 0) { this.lastUpdateTimestamp = messages.OrderByDescending(m => m.LastUpdate).ElementAt(0).LastUpdate; } } }