将列表复制到剪贴板以将富文本格式粘贴到Outlook中

时间:2018-11-05 18:52:39

标签: c# outlook clipboard onenote

我有一个由三部分组成的列表:文本,url,长文本(基本上是一个Twitter句柄,链接到tweet,tweet的文本)。

我试图弄清楚如何将该列表加载到剪贴板中,以便在将其粘贴到独立Outlook(或OneNote,我认为它是相同的解决方案)时,最终会得到一个可点击的由前两个数据组成的链接(即MyHandle是tweet的<a href)。

2 个答案:

答案 0 :(得分:0)

您可以使用以下代码将格式化的HTML字符串复制到剪贴板中以粘贴:

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

参考:

How do I copy formatted HTML string into a Clipboard for paste using C#?

答案 1 :(得分:0)

Alina的回答是正确的,但我确实同意Rob的观点,因为它需要更多信息。

基本上,没有办法直接执行此操作,但是,在How do I copy formatted HTML string into a Clipboard for paste using C#?中,在http://blogs.msdn.com/b/jmstall/archive/2007/01/21/sample-code-html-clipboard.aspx有对HTMLFragment类的引用。该类,由HtmlFragment.CopyToClipboard(insertString);调用。确实无法将格式化的文本粘贴到Outlook / OneNote中。

在查看原始代码Clipboard.SetText(insertString,TextDataFormat.Html);之前,我应该先进行测试,因为原始帖子在粘贴时出错,而不是剪贴板设置出错,最后是HTMLFragement错误上课很好,我很高兴。这只是一个人的项目,所以有点烦(不是很多错误检查或ui中的美。..我的意思是,哎呀,我把它当作winform而不是流利的/ uwp来做)。但是,这就是答案:

尝试Clipboard.SetText(insertString,TextDataFormat.Html);如果在尝试粘贴到剪贴板中时这不起作用,请移至http://blogs.msdn.com/b/jmstall/archive/2007/01/21/sample-code-html-clipboard.aspx中的HTMLFragment类,然后通过HtmlFragment.CopyToClipboard(YOUR_HTML_STRING)进行调用;