【问题标题】:How do I copy formatted HTML string into a Clipboard for paste using C#?如何使用 C# 将格式化的 HTML 字符串复制到剪贴板以进行粘贴?
【发布时间】:2013-01-30 20:53:41
【问题描述】:

我的最终目标是Insert formatted rich text into Outlook inspector (e.g. AppointmentItem, MailItem, etc).我在 MSDN 论坛上问过这个问题,有人回答我应该使用剪贴板来复制其内容,然后使用我想使用的目标格式将其粘贴到窗口中。

我有以下 HTML 字符串

<html><body><table><tr><td>iPhone</td><td>Telephone#</td></tr></table></body></html>

我有以下 C# 代码

Clipboard.SetText(insertString, TextDataFormat.Html);

//....
//code to get Word.Range in my inspector item (inconsequential to this question)
//....

selected.Paste();

问题是剪贴板没有插入文本,或者在代码中抛出 COM Failed 异常。

感谢 jlew 回答

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

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

【问题讨论】:

    标签: c#


    【解决方案1】:

    除非自过去(.NET 2,这是我最后一次尝试这个)以来发生了某些变化,否则您需要在将其放入剪贴板之前添加正确的剪贴板标题行,如下所述:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-31
      • 2013-11-21
      • 2010-10-09
      • 1970-01-01
      相关资源
      最近更新 更多