簡體   English   中英

如何將格式化的HTML字符串復制到剪貼板中以使用C#粘貼?

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

我的最終目標是將格式化的富文本格式插入Outlook檢查器(例如AppointmentItem,MailItem等)。 我在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異常。

使用Paste()時出現COM異常

感謝jlew

 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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM