使用剪贴板

时间:2013-06-19 14:48:40

标签: c# clipboard

我需要以两种方式将我的应用程序中的一些文本复制到Clipboard。一个是纯文本,第二个是HTML格式。我需要能够将文本粘贴到记事本和Word文档。这是代码:

Clipboard.SetText(plainText);
Clipboard.SetDataObject(html);

问题是我可以将其粘贴到Word文档中,但不能粘贴到记事本中。

更新 我尝试了这个,我可以粘贴到记事本,但我丢失了我的HTML。

Clipboard.SetText(plainText);
//Clipboard.SetDataObject(html);

当您从Word文档复制格式化文本(不同的字体和颜色)时,您可以将其粘贴到记事本和另一个Word文档而不会丢失格式。我需要能够做同样的事情。

请帮忙。

2 个答案:

答案 0 :(得分:0)

您应该使用下一种格式:

Clipboard.SetText(replacementHtmlText, TextDataFormat.Html);

了解更多there。希望这会有所帮助。

答案 1 :(得分:0)

您可以使用DataObject类来设置两者。例如:

var dataObject = new DataObject();
dataObject.SetText(yourRichText,TextDataFormat.Text);
dataObject.SetData(yourRichText,TextDataFormat.Rtf);

Clipboard.SetDataObject(dataObject);