Выбор нескольких файлов в OpenFileDialog - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет!Нуждаюсь в помощи!У меня есть код, с помощью которого я отправляю письмо с прикрепленным файлом на почту.Но проблема в том, что файл прикреплен по умолчанию, а мне нужно через OpenFileDialog выбирать несколько файлов, прикреплять их к моему письму, и отправлять, но я не знаю как это сделать, может кто поможет кодом?Заранее спасибо. Вот мой код:
public void SendMail(string email,string password,string toEmail)
        {         
            try
            {               
                 //Приступаем к формированию самого письма
                MailMessage Message = new MailMessage();
                Message.From = new MailAddress(email);// от кого
                Message.To.Add(new MailAddress(toEmail));// кому
                Message.Subject = "Тема сообщения";
                Message.Body = "Само сообщение";
           
                string fromfile = @"C:\12.xls";
                        Attachment attach = new Attachment(fromfile, MediaTypeNames.Application.Octet);
                        Message.Attachments.Add(attach);
                //Указываем SMTP сервер и авторизуемся.
                SmtpClient Smtp_Client = new SmtpClient("smtp.mail.ru", 25);
                Smtp_Client.Credentials = new NetworkCredential(email, password);
                //включаем SSL
                Smtp_Client.EnableSsl = true;
                Smtp_Client.Send(Message);//непосредственно само отправление...
                MessageBox.Show("Отправлено","Отчет об отправке",MessageBoxButtons.OK,MessageBoxIcon.Information);
               attach.Dispose();
            }
            catch (Exception s)
            { MessageBox.Show("Ошибка при отправке! Проверьте пожалуйста подключение к интернету и попробуйте еще раз!","Отчет об отправке",MessageBoxButtons.OK,MessageBoxIcon.Warning);
            }
          
        }
    }

Решение задачи: «Выбор нескольких файлов в OpenFileDialog»

textual
Листинг программы
using Microsoft.Win32;
 
public void SendMail(string email,string password,string toEmail) { 
    try { 
        //Приступаем к формированию самого письма
        MailMessage Message = new MailMessage();
        Message.From = new MailAddress(email);// от кого
        Message.To.Add(new MailAddress(toEmail));// кому
        Message.Subject = "Тема сообщения";
        Message.Body = "Само сообщение";
        
        // Всё внимание сюда
        OpenFileDialog dlg = new OpenFileDialog {
            Multiselect = true,
            Title = "Выберите файлы",
            InitialDirectory = @"C:\"
        };
        dlg.ShowDialog();
        // пользователь вышел из диалога ничего не выбрав
        if (dlg.FileName == String.Empty)
            return;
        foreach (string file in dlg.FileNames) {
            Message.Attachments.Add(
                new Attachment(file, MediaTypeNames.Application.Octet));
        }
 
        //Указываем SMTP сервер и авторизуемся.
        SmtpClient Smtp_Client = new SmtpClient("smtp.mail.ru", 25);
        Smtp_Client.Credentials = new NetworkCredential(email, password);
        //включаем SSL
        Smtp_Client.EnableSsl = true;
        Smtp_Client.Send(Message);//непосредственно само отправление...
        MessageBox.Show("Отправлено","Отчет об отправке",MessageBoxButtons.OK,MessageBoxIcon.Information);
        attach.Dispose();
    }
    catch (Exception s) {
        MessageBox.Show("Ошибка при отправке! Проверьте пожалуйста подключение к интернету и попробуйте еще раз!",
            "Отчет об отправке",
            MessageBoxButtons.OK,MessageBoxIcon.Warning);
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы