【发布时间】:2011-02-04 13:50:52
【问题描述】:
我正在用 C# 开发一些程序,它将使用 Outlook 2007 发送邮件。为此,我希望在邮件正文中创建一个表,并需要在其中显示所需的数据。谁能告诉我如何在邮件正文中以编程方式创建表格。
【问题讨论】:
标签: c# email outlook outlook-2007 html-email
我正在用 C# 开发一些程序,它将使用 Outlook 2007 发送邮件。为此,我希望在邮件正文中创建一个表,并需要在其中显示所需的数据。谁能告诉我如何在邮件正文中以编程方式创建表格。
【问题讨论】:
标签: c# email outlook outlook-2007 html-email
只需在标准 HTML 表格中输出数据即可。
然后将其作为 HTML 电子邮件而不是纯文本发送。这是 C# 中的一个快速而肮脏的示例:
MailMessage msg = new MailMessage("From@Email.com", "To@Email.com");
msg.IsBodyHTML = true;
msg.Subject = "Subject line here";
msg.Body = "html goes here";
SmtpClient mailClient = new SmtpClient("YourEmailServer");
mailClient.Send(msg);
【讨论】:
msg.IsBodyHTML = true; 应该是msg.IsBodyHtml = true;
要创建表格,您可以使用 HTML 表格标签。
<table><tr>....</tr></table>.
代码如下:
MailMessage msg = new MailMessage("From@Email.com", "To@Email.com");
msg.IsBodyHTML = true;
msg.Subject = "Subject line here";
msg.Body = "<table border=1><tr><td>one</td></tr><tr><td>two</td></tr>";
SmtpClient mailClient = new SmtpClient("YourEmailServer");
mailClient.Send(msg);
希望这对你有帮助。
【讨论】:
试试这个
using outlook = Microsoft.Office.Interop.Outlook;
string emailSubject = "Subject of email";
string htmlString = "<table><tr><td>Hi</td></tr></table>";
outlook.Application outlookApp = new outlook.Application();
outlook.MailItem mailItem = (outlook.MailItem)outlookApp.CreateItem(outlook.OlItemType.olMailItem);
mailItem.Subject = emailSubject;
mailItem.HTMLBody = htmlString;
mailItem.To = "someaddress@someaddress.com";
mailItem.Save();
这将在您的 Outlook > 草稿文件夹中创建一条新邮件,其中包含一个显示“Hi”的单行表格
【讨论】: