static void OnNewMessage(object sender, IdleMessageEventArgs e) { MessageBox.Show("New Message Received!", "Notification!"); message = e.Client.GetMessage(e.MessageUID, FetchOptions.Normal); f.Invoke((MethodInvoker) delegate { Email_Receive email = new Email_Receive(); email.Email = message.From.ToString(); email.Subject = message.Subject.ToString(); email.Message = message.Body; email.Datetime = (DateTime)message.Date(); email.Mailmessage = message; list_email.Add(email); }); f.ListView_Inbox.Items.Clear(); ListViewItem item = new ListViewItem(); item.Text = list_email[list_email.Count - 1].Email; item.SubItems.Add(list_email[list_email.Count - 1].Message); item.SubItems.Add(list_email[list_email.Count - 1].Datetime.ToString()); list_item.Add(item); for (int i = list_item.Count - 1; i >= 0; i--) { try { f.ListView_Inbox.Items.Add(list_item[i]); } catch (Exception) { } } }
public Receive_Mail(Account account_mail, MailMessage mailmessage) { InitializeComponent(); this.CenterToScreen(); account.Email = account_mail.Email; account.Password = account_mail.Password; this.CenterToScreen(); email_receive = email; message = mailmessage; }
private void ListView_Inbox_MouseClick(object sender, MouseEventArgs e) { Email_Receive email1 = new Email_Receive(); string email = ListView_Inbox.SelectedItems[0].SubItems[0].Text; string datetime = ListView_Inbox.SelectedItems[0].SubItems[2].Text; int index = -1; for (int i = 0; i < list_email.Count; i++) { if (list_email[i].Email == email && datetime == list_email[i].Datetime.ToString()) { index = i; break; } } Receive_Mail form_receive_mail = new Receive_Mail(account, list_email[index].Mailmessage); form_receive_mail.Show(); // MessageBox.Show("Index : " + index.ToString() + " Mail : " + email + " DateTime : " + datetime.ToString() + " DateTime of list_email0 : " + list_email[0].Datetime.ToString() + " DateTime of list_email1 : " + list_email[1].Datetime.ToString()); //MessageBox.Show("DateTime of list_email0 : " + list_email[0].Datetime.ToString() + " DateTime of list_email1 : " + list_email[1].Datetime.ToString() + "DateTime of list_email3 : " + list_email[2].Datetime.ToString() + "DateTime of list_email3 : " + list_email[3].Datetime.ToString()); }