ObservableCollection <Email> emails; // коллекция email-ов адресатов /// <summary> //// Непосредственно отправка писем /// </summary> /// <param name="dtSend"></param> /// <param name="emailSender"></param> /// <param name="emails"></param> public void SendEmails(DateTime dtSend, EmailSendServiceClass emailSender, ObservableCollection <Email> emails) { this.emailSender = emailSender; // Экземпляр класса, отвечающего за отправку писем, присваиваем this.dtSend = dtSend; this.emails = emails; timer.Tick += Timer_Tick; timer.Interval = new TimeSpan(0, 0, 1); timer.Start(); }
private void BtnSendLater_Click(object sender, RoutedEventArgs e) { SchedulerClass sc = new SchedulerClass(); TimeSpan tsSendTime = timePickerBox.TimeInterval; DateTime dtSendDateTime = (cldSchedulDateTimes.SelectedDate ?? DateTime.Today).Add(tsSendTime); if (dtSendDateTime < DateTime.Now) { MessageBox.Show("Дата и время отправки писем не могут быть раньше, чем настоящее время"); return; } EmailSendServiceClass emailSender = new EmailSendServiceClass(cbSenderSelect.Text, EncrypterDll.EncrypterLite.Deencrypt(cbSenderSelect.SelectedValue.ToString(), 10)); var locator = (ViewModel.ViewModelLocator)FindResource("Locator"); //sc.SendEmails(dtSendDateTime, emailSender, (IQueryable<Email>)dgEmails.ItemsSource); sc.SendEmails(dtSendDateTime, emailSender, locator.Main.ChosedEmails); }
private void BtnSendNow_Click(object sender, RoutedEventArgs e) { string strLogin = cbSenderSelect.Text; if (string.IsNullOrEmpty(strLogin)) { MessageBox.Show("Выберите отправителя"); return; } string strPassword = cbSenderSelect.SelectedValue.ToString(); if (string.IsNullOrEmpty(strPassword)) { MessageBox.Show("Укажите пароль отправителя"); return; } EmailSendServiceClass emailSender = new EmailSendServiceClass(strLogin, EncrypterDll.EncrypterLite.Deencrypt(strPassword, 10)); emailSender.StrSmtp = cbSmtp.Text; if (string.IsNullOrEmpty(emailSender.StrSmtp)) { MessageBox.Show("Укажите SMTP сервер для отправителя"); return; } emailSender.MailBody = new TextRange(LetterBody.Document.ContentStart, LetterBody.Document.ContentEnd).Text; if (string.IsNullOrEmpty(emailSender.MailBody)) { emailSender.MailBody = "Empty message"; } emailSender.MailSubject = new TextRange(LetterSubject.Document.ContentStart, LetterSubject.Document.ContentEnd).Text; if (string.IsNullOrEmpty(emailSender.MailSubject)) { emailSender.MailBody = "No name"; } var locator = (ViewModel.ViewModelLocator)FindResource("Locator"); //emailSender.SendMails((IQueryable<Email>)dgEmails.ItemsSource); emailSender.SendMails(locator.Main.ChosedEmails); }
private void SendMessageButton_Click(object sender, RoutedEventArgs e) { using (var letter = new EmailSendServiceClass()) { try { //var letter = new EmailSendServiceClass(); if (UserNameTextBox.Text != "") { letter.DefineMailFromTo(UserNameTextBox.Text, "*****@*****.**"); } letter.CreateMailText(); letter.SendMail(PasswordEdit.Password.ToString()); } catch (Exception exception) { MessageBox.Show(exception.Message, "При отправке сообщения возникла ошибка", MessageBoxButton.OK, MessageBoxImage.Error); //var dlg = new MessageSendCompletedDlg(exception.Message); //dlg.ShowDialog(); } } }