// Обработка того, что список писем не загружен с сервера private void InputMail_OnNotLoadMessages() { // Загрузка списка писем из файла List <MyMailMessage> messages = MailStorage.LoadHeaders(currentMailBox); // Сортировка списка писем по убыванию даты List <MyMailMessage> sorted = messages.OrderByDescending(x => x.Date).ToList(); // Наступление события завершения загрузки списка писем InputMail_OnLoadedMessages(sorted); }
// Метод загрузки списка писем public void LoadMessageList() { if (currentMailBox.SelectedFolder.Type == TYPE_FOLDER.DRAFTS || currentMailBox.SelectedFolder.Type == TYPE_FOLDER.TEMPLATE) { // Для папок черновиков и шаблонов // загружать список писем из файла List <MyMailMessage> messages = MailStorage.LoadHeaders(currentMailBox); InputMail_OnLoadedMessages(messages); } else { // Запуск загрузки списка писем из папки в параллельном потоке Thread inSlt = new Thread(new ParameterizedThreadStart(inputMail.LoadMessages)); inSlt.Start(currentMailBox.SelectedFolder.Pointer); } }