private void Window_Loaded(object sender, RoutedEventArgs e) { LoginWindow window = DI.Get <LoginWindow>(); window.Show(); window.Closed += async(e, h) => { if (!MailLogic.IsAuthenticated) { Close(); return; } var boxes = await MailLogic.GetMailBoxTree(); var mails = await MailLogic.GetMails(await MailLogic.GetAllMailBox(), 0, 200); BoxTree.ItemsSource = boxes; foreach (var mail in mails) { await MailClassifier.Classify(mail); switch (mail.Category) { case MailCategory.Banking: Banking.Add(mail); break; case MailCategory.Spam: Spam.Add(mail); break; case MailCategory.Promotion: Promotions.Add(mail); break; case MailCategory.Updates: Updates.Add(mail); break; } } BankingButton.IsEnabled = true; PromotionsButton.IsEnabled = true; SpamButton.IsEnabled = true; UpdatesButton.IsEnabled = true; }; }
protected Task Next(MailHeader Mail) { return(NextClassifier.Classify(Mail)); }