我想将 HTML 格式的富文本放在剪贴板上,这样当用户粘贴到 Word 时,它将包含源 HTML 格式。
Using the Clipboard.SetText method http://msdn.microsoft.com/en-us/library/tbfb3z56.aspx不起作用。
另外,我希望如果用户粘贴到 Word 等富编辑器中,它将粘贴格式化文本,如果用户粘贴到记事本等普通编辑器中,它将粘贴纯文本。
设置 HTML 文本时,您需要提供一个标头,其中包含您实际想要粘贴的 html 片段的附加信息,同时能够提供附加样式:
Version:0.9
StartHTML:000125
EndHTML:000260
StartFragment:000209
EndFragment:000222
<HTML>
<head>
<title>HTML clipboard</title>
</head>
<body>
<!–StartFragment–><b>Hello!</b><!–EndFragment–>
</body>
</html>
使用标头(和正确的索引),调用Clipboard.SetText
with TextDataFormat.Html
会成功的。
要处理 HTML 和纯文本粘贴,您不能使用Clipboard.SetText
方法,因为每次调用它都会清除剪贴板;你需要创建一个DataObject
实例,调用它的SetData
方法一次使用 HTML,一次使用纯文本,然后使用将对象设置到剪贴板Clipboard.SetDataObject
.
Update
See "重新设置 HTML/文本到剪贴板 http://theartofdev.com/2014/06/12/setting-htmltext-to-clipboard-revisited/“了解更多详细信息以及剪贴板助手执行。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)