如何将超链接插入 Outlook 约会的 RTFBODY 属性?
How to insert hyperlink into RTFBODY property of Outlook Appointment?
这是我目前拥有的:
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" 文本,但没有 link 附加到文本。我想我很接近,但我对 RTF 格式不太了解。任何帮助将不胜感激!
查看描述完全相同问题的 What is the RTF syntax for a hyperlink? 话题:
RTF 字段语法包含在specification, and using the HYPERLINK instruction will give you a link. This question 显示了 HYPERLINK 指令的用法。
另外,我建议保存 Outlook 项目并重新打开检查器 window。希望对你有帮助。
您正在回读 rtb.Text(纯文本),而不是 Rtf:
item.RTFBody = System.Text.Encoding.UTF8.GetBytes(rtb.Rtf);
这是我目前拥有的:
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" 文本,但没有 link 附加到文本。我想我很接近,但我对 RTF 格式不太了解。任何帮助将不胜感激!
查看描述完全相同问题的 What is the RTF syntax for a hyperlink? 话题:
RTF 字段语法包含在specification, and using the HYPERLINK instruction will give you a link. This question 显示了 HYPERLINK 指令的用法。
另外,我建议保存 Outlook 项目并重新打开检查器 window。希望对你有帮助。
您正在回读 rtb.Text(纯文本),而不是 Rtf:
item.RTFBody = System.Text.Encoding.UTF8.GetBytes(rtb.Rtf);