Ejemplo n.º 1
0
 /// <summary>
 /// Efface l'affichage du mail courant
 /// </summary>
 private void ClearCurrentMail()
 {
     I_CurrentMailFrom.Text    = "";
     I_CurrentMailTo.Text      = "";
     I_CurrentMailCc.Text      = "";
     I_CurrentMailSubject.Text = "";
     WB_CurrentMailBody.Navigate((Uri)null);
     gCurrentMail        = null;
     gCurrentMailSummary = null;
     hideMailControls();
     IT_InboxMessages.SelectedIndex = -1;
 }
Ejemplo n.º 2
0
 // Adapte l'affichage de l'enveloppe d'un mail selon son drapeau passé en paramètre
 private void checkMailFlags(DataGridRowEventArgs e)
 {
     if (e.Row.Item != null)
     {
         MailShort ms = (MailShort)e.Row.Item;
         if (ms.MailShortFlag.HasFlag(MessageFlags.Seen)) // mail déjà lu donc on enlève le gras
         {
             e.Row.FontWeight = FontWeights.Normal;
             e.Row.Foreground = Brushes.Black;
         }
     }
 }
Ejemplo n.º 3
0
        /// Récupérer un MimeMessage lors que l'utilisateur sélectionne un MailSummary dans le DGV et l'afficher
        private async Task openMail(SelectionChangedEventArgs e)
        {
            if (currentCompteMessagerie.isAuthenticated())
            {
                if (IT_InboxMessages.SelectedIndex != -1)
                {
                    if (e.AddedItems.Count > 0)
                    {
                        //ClearCurrentMail();
                        if (asyncProcessRunning == false)
                        {
                            PG_Mailbox.Visibility      = Visibility.Visible;
                            PG_Mailbox.IsIndeterminate = true;
                            gCurrentMailSummary        = (MailShort)e.AddedItems[0];
                            await Task.Run(() =>
                            {
                                asyncProcessRunning = true;
                                try
                                {
                                    this.gCurrentMail = currentClient.Inbox.GetMessage(gCurrentMailSummary.uid);
                                }
                                catch (Exception ex)
                                {
                                    MessageBox.Show(ex.Message);
                                }
                                asyncProcessRunning = false;
                            });

                            ShowCurrentMail();
                            currentClient.Inbox.AddFlags(gCurrentMailSummary.uid, MessageFlags.Seen, true); // Marquer le mail comme lu
                            PG_Mailbox.Visibility      = Visibility.Hidden;
                            PG_Mailbox.IsIndeterminate = false;
                        }
                    }
                }
            }
        }