如何将格式化的富文本框作为邮件签名发送给 c# winform 中的某个人
How to send formatted Rich Text Box as mail signature to some one in c# winform
我使用富文本框创建了电子邮件签名。我想通过 smtp 协议将它发送给我的客户。我知道发送 smtp 邮件的代码,但是如何将 this 格式的文本作为邮件正文发送到客户端?
提前致谢。
您要做的是以html格式发送电子邮件:
MailMessage myMail = new MailMessage();
myMail.IsBodyHtml = true;
myMail.Body = "<b>here your html text</b>";
使用 System.Net.Mail
命名空间。
为了像您的 richtextbox 文本一样格式化正文,您必须编写一些逻辑以将文本转换为 html。
当我说逻辑时,我的意思是您必须在 richtextbox 中找到新行、粗体文本、文本颜色等,并将其转换为 html.
例如,假设这是文本框中的文本:
Hello
I AM ROBOT
您必须编写逻辑才能将其转换为该字符串:
<span> Hello <br/> I AM <b>ROBOT</b></span>
将文本作为 html
嵌入后,将其传递给 MailMessage
class 的 .Body
属性,并且 .IsBodyHtml
属性 必须是设置为真。
这里有一个针对该任务的推荐工具:Writing Your Own RTF Converter 如果你不想自己做。
我使用富文本框创建了电子邮件签名。我想通过 smtp 协议将它发送给我的客户。我知道发送 smtp 邮件的代码,但是如何将 this 格式的文本作为邮件正文发送到客户端?
提前致谢。
您要做的是以html格式发送电子邮件:
MailMessage myMail = new MailMessage();
myMail.IsBodyHtml = true;
myMail.Body = "<b>here your html text</b>";
使用 System.Net.Mail
命名空间。
为了像您的 richtextbox 文本一样格式化正文,您必须编写一些逻辑以将文本转换为 html。
当我说逻辑时,我的意思是您必须在 richtextbox 中找到新行、粗体文本、文本颜色等,并将其转换为 html.
例如,假设这是文本框中的文本:
Hello
I AM ROBOT
您必须编写逻辑才能将其转换为该字符串:
<span> Hello <br/> I AM <b>ROBOT</b></span>
将文本作为 html
嵌入后,将其传递给 MailMessage
class 的 .Body
属性,并且 .IsBodyHtml
属性 必须是设置为真。
这里有一个针对该任务的推荐工具:Writing Your Own RTF Converter 如果你不想自己做。