如何使用C#将格式化的HTML字符串复制到剪贴板中以进行粘贴?

我的最终目标是将格式化的富文本格式插入Outlook检查器(例如AppointmentItem,MailItem等)。 我在MSDN论坛上问过这个问题,有人回复说我应该使用剪贴板来复制它的内容,然后使用我想要使用的目标格式将它粘贴到窗口中。

我有以下HTML 字符串

iPhoneTelephone#

我有以下C#代码

 Clipboard.SetText(insertString, TextDataFormat.Html); //.... //code to get Word.Range in my inspector item (inconsequential to this question) //.... selected.Paste(); 

问题是剪贴板不插入文本,或在代码中抛出COM失败的exception。

使用Paste()时出现COM异常

答案谢谢你

  HtmlFragment.CopyToClipboard(insertString); selected.Paste(); 

在这里找到HtmlFragment代码: http : //blogs.msdn.com/b/jmstall/archive/2007/01/21/sample-code-html-clipboard.aspx

除非从以前的某些事情发生了变化(.NET 2,这是我最后一次尝试这个),你需要在将它放到剪贴板之前添加正确的剪贴板标题行,如下所述:

http://blogs.msdn.com/b/jmstall/archive/2007/01/21/html-clipboard.aspx