2010-08-22 12 views
9

Qualcuno può dirmi come posso ottenere il numero di elementi non letti nella mia posta in arrivo da Gmail usando imap o qualcos'altro e visualizzarlo in un'etichetta in C# WinForms?Contare il numero di email in gmail usando IMAP

Ho provato ad utilizzare feed Atom, ma mai riuscito a farlo

Ecco quello che voglio apparire come, se aiuta:

Inbox(1)

+0

Si prega di rimuovere la risposta dalla domanda e postarla come una risposta reale. Grazie! – Timwi

risposta

6

Probabilmente si desidera trovare tutti i messaggi con il UNSEEN set di bandiera.

Imap imap = new Imap(); 
/* connect, login, etc. */ 
imap.Connect(...); 
/* fill login and select folder code */ 

List<long> unseenList = imap.SearchFlag(Flag.Unseen); 

// now you can get the count from unseeList 
int unread = unseenList.Count; 
+0

Potrebbe elaoborate un po 'di più completamente nuovo a progrsmming – Shane121

+1

@user Vedere la risposta modificata – quantumSoup

+0

Grazie per l'aiuto ha funzionato bene così come vorrei mostrare in un'etichetta – Shane121

9

risolto

Ecco il codice che ho usato con il componente ImapX:

ImapX.ImapClient client = new ImapX.ImapClient("imap.gmail.com", 993, true); 
     bool result = false; 

     result = client.Connection(); 
     if (result) 
      MessageBox.Show("Connection Established"); 

     result = client.LogIn(textBox1.Text, textBox2.Text); 
     if (result) 
     { 
      MessageBox.Show("Logged in"); 
      ImapX.FolderCollection folders = client.Folders; 
      ImapX.MessageCollection messages = client.Folders["INBOX"].Search("UNSEEN", true); //true - means all message parts will be received from server 

      int unread = messages.Count; 
      string unseen = unread.ToString(); 
      button1.Text = unseen; 
     } 

Ho appena avuto per convertire l'int in una stringa e mostrare la corda (non visto) in il tasto. Grazie a quantumSoup per avermi indicato nella giusta direzione

+3

Se l'URL sopra non ha funzionato, è possibile provare a utilizzare la nuova versione da http://imapx.codeplex.com – Evereq