这是我到目前为止所做的:
RichTextBox rtb = new RichTextBox();
rtb.Rtf = System.Text.Encoding.UTF8.GetString(item.RTFBody);
rtb.Select(rtb.TextLength, 0);
rtb.SelectedRtf = @"{\rtf1\ansi{\fonttbl\f0\fswiss Helvetica;}\f0\pard {\par} {\field{\*\fldinst HYPERLINK ""http://www.google.com/""}{\fldrslt Click Here}}";
item.RTFBody = System.Text.Encoding.UTF8.GetBytes(rtb.Text);
代码运行正常,并添加" Click Heere"文本,但文本没有附加链接。我想我已经接近了,但我对RTF格式不太了解。任何帮助将不胜感激!
答案 0 :(得分:1)
查看描述完全相同问题的What is the RTF syntax for a hyperlink?主题:
RTF字段语法包含在specification中,使用HYPERLINK指令会为您提供链接。此question显示了HYPERLINK指令的用法。
另外,我建议保存Outlook项目并重新打开检查器窗口。希望它会有所帮助。
答案 1 :(得分:1)
您正在读回rtb.Text(纯文本),而不是Rtf:
item.RTFBody = System.Text.Encoding.UTF8.GetBytes(rtb.Rtf);