剪贴板粘贴问题

时间:2014-05-15 06:41:54

标签: c# .net winforms excel

我的应用程序从剪贴板中获取字符串:

IDataObject dataInClipboard = Clipboard.GetDataObject();
string stringInClipboard = (string)dataInClipboard.GetData(DataFormats.Text);

然后它操纵数据并将结果字符串复制到剪贴板:

Clipboard.SetText(result);

它应该有一个Excel工作表中的表作为输入剪贴板和一个由[\ t \ r \ n]分隔的字符串作为输出剪贴板

SetText()应该清除剪贴板,我确实有所需的输出剪贴板。但是,当我手动将其粘贴到同一个Excel工作表时,会粘贴上一个(输入)剪贴板内容。

同时如果我以前关闭我的应用程序,则会粘贴正确的输出字符串。此外,如果我之前完成Excel过程然后再次启动它也会粘贴正确的输出。

错误在哪里?

1 个答案:

答案 0 :(得分:0)

我注意到应用程序窗口关闭时问题消失了。此外,我决定更改程序逻辑:如果它只能用于Excel,为什么不把它变成加载项呢?所以,谢谢你们的帮助,问题现在已经解决了。