2016-09-26 8 views
0

コードは以下の通りです。電子メールにグリッドを追加するにはどうすればいいですか?電子メールにグリッドを追加する方法

private void button1_Click(object sender, EventArgs e) 
{ 
} 

private void Form1_Load(object sender, EventArgs e) 
{ 
    SqlConnection conn = new SqlConnection(); 

    conn.ConnectionString = @"Data Source=10.1.1.1;Initial Catalog=xxx;Integrated Security=True"; 
    SqlCommand command = new SqlCommand(); 
    command.Connection= conn; 
    command.CommandText ="Select top 10 * from tablea"; 

    DataTable data = new DataTable(); 
    SqlDataAdapter adapter = new SqlDataAdapter(); 
    adapter.SelectCommand = command; 
    adapter.Fill(data); 
    gvSendEmail.DataSource = data; 

    try 
    { 
     MailMessage mail = new MailMessage(); 
     SmtpClient SmtpServer = new SmtpClient("10.1.1.11"); 
     mail.From = new MailAddress("[email protected]", "xxxx"); 
     mail.To.Add("[email protected]"); 
     mail.Subject = "Test Mail"; 
     mail.Body = "This is test email"; 
     mail.Body += "Please check below data "; 
     SmtpServer.Port = 25; 
     SmtpServer.Credentials = new System.Net.NetworkCredential("xxxx", "xxxx"); 
     SmtpServer.EnableSsl = false; 
     SmtpServer.Send(mail); 
     MessageBox.Show("mail Send"); 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show(ex.ToString()); 
    } 
} 

答えて

0

次のように何かを試してみてください:

private void btnSend_Click_1(object sender, EventArgs e) 
{ 
     string mailBody = "<table width ='100%' style ='border:Solid 1px Black;'>"; 

     foreach (DataGridViewRow row in dataGridView1.Rows) //Loop through DataGridView to get rows 
     { 
      mailBody += "<tr>"; 
      foreach (DataGridViewCell cell in row.Cells) //Loop through DataGridView to get cell value 
      { 
       mailBody += "<td stlye='color:blue;'>" +cell.Value + "</td>"; 
      } 
      mailBody += "</tr>"; 
     } 
     mailBody += "</table>"; 

     //Finally rest of the original code 
     mail.IsBodyHtml = true; 
     mail.Body = mailBody; 
     client.Send(mail); 
}  
+0

あなたがTrueにはMailMessageオブジェクトのIsBodyHtmlプロパティを設定する必要がなければなりません。 mail.IsBodyHtml = true; –

+0

が更新されました。通知をありがとう。 –

+0

ちょっとしたことですが、テーブルはグリッドヘッダー列を表示していません。ありがとうございました。 –

関連する問題