繁体   English   中英

如何将HTML和文本复制到剪贴板?

[英]How to copy both - HTML and text to the clipboard?

我正在尝试同时放入HTML和纯文本的剪贴板片段,以便支持HTML的编辑器可以粘贴HTML,其他编辑器可以使用纯文本。

Clipboard.SetData(DataFormats.Html, htmlWithHeader);
Clipboard.SetData(DataFormats.UnicodeText, plainText);

但只有最后一种格式实际上放在剪贴板上。 在上面的示例中,剪贴板仅包含明文(如Clipboard.GetDataObject().GetFormats() )。 如果我交换行,剪贴板将只有HTML格式。

如何将两种格式同时放入剪贴板?

您不能使用Clipboard.SetData来设置HTML和纯文本。 SetData的第二次调用将清除第一次调用设置的剪贴板内容并存储新数据。

您应该使用DataObjectClipboard.SetDataObject()

例:

DataObject dataObj = new DataObject();
dataObj.SetData(DataFormats.Html, htmlWithHeader);
dataObj.SetData(DataFormats.Text, plainText);

Clipboard.SetDataObject(dataObj);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM