Пример #1
0
        private void SendB_Click(object sender, RoutedEventArgs e)
        {
            var textRange = new TextRange(TextMessag.Document.ContentStart, TextMessag.Document.ContentEnd);

            if ((Email.Text.Length > 0) && (textRange.Text.Length > 0) && (Header.Text.Length > 0))
            {
                MailAddress from = new MailAddress(login, "");
                // кому отправляем
                MailAddress to = new MailAddress(Email.Text);
                // создаем объект сообщения
                MailMessage m = new MailMessage(from, to);
                // тема письма
                m.Subject = Header.Text;

                if (Convert.ToBoolean(Encripter.IsChecked))
                {
                    XenoCode a = new XenoCode();

                    m.Body = passEmail + a.RSA_encryption(textRange.Text, login, Email.Text) + "&";
                }
                else

                {
                    m.Body = textRange.Text;
                }
                // адрес smtp-сервера и порт, с которого будем отправлять письмо
                string[]   words = login.Split(new char[] { '@' });
                string     smt   = "smtp." + words[1];
                SmtpClient smtp  = new SmtpClient(smt, 587);
                // логин и пароль
                smtp.Credentials = new NetworkCredential(login, pass);
                smtp.EnableSsl   = true;

                try
                {
                    smtp.Send(m);
                    FlowDocument document  = new FlowDocument();
                    Paragraph    paragraph = new Paragraph();
                    paragraph.Inlines.Add(new Bold(new Run("")));
                    document.Blocks.Add(paragraph);
                    TextMessag.Document = document;

                    if (Convert.ToBoolean(CheckSave.IsChecked))
                    {
                        GoToAddress WindowAddres = new GoToAddress();

                        if (WindowAddres.ShowDialog() == true)
                        {
                            AddressBook ad = new AddressBook(Email.Text, login, pass);
                            ad.Show();
                            CloseCheck = true;
                            this.Close();
                        }
                    }
                    Email.Text = Header.Text = "";
                }
                catch
                {
                    MessageBox.Show("Письмо не отправлено!", "Ошибка");
                }
            }
            else
            {
                MessageBox.Show("Не все поля заполнены!", "Внимание!");
            }
        }