C#剪贴板帮助

时间:2010-10-04 13:30:28

标签: c# excel clipboard

我正在我编写的程序中将Excel文件的内容复制到剪贴板上。然后我可以在内存中使用这些数据,而不是经常与Excel“聊天”。

当我完成数据后,我首先调用一个调用Clipboard.Clear()的清理方法,然后关闭所有Excel工作表/工作簿/应用程序等。

问题是,即使我在关闭Excel工作表之前清除了剪贴板,我仍然会弹出一个窗口,说明剪贴板上有大量数据。有谁知道为什么?

谢谢,

达伦。

4 个答案:

答案 0 :(得分:3)

不确定为什么会发生这种情况,但您是否尝试在关闭工作表之前设置_Application.DisplayAlerts = false;MSDN)以查看是否会阻止警告消息?

答案 1 :(得分:0)

您可以尝试设置Excel CutCopyMode property以取消当前的副本信息:

Application.CutCopyMode = false;

另一个想法是将剪贴板设置为String.Empty,以便复制的数据量足够小,以便绕过警告弹出窗口。这可能必须从Excel工作表完成,而不是常规剪贴板(即,从Excel中的活动工作表复制单元格)。

答案 2 :(得分:0)

也许你可以使用

Application.CutCopyMode = false;

http://msdn.microsoft.com/en-us/library/ff839532.aspx

答案 3 :(得分:0)

最后,尝试在剪贴板中复制一个空字符串并保留它,然后Excel可能不会发出任何警告。但是使用Excel API在剪贴板中复制空字符串。