从datagridview复制/粘贴到未来excel / .net版本的优秀概率?

时间:2011-11-08 20:39:06

标签: c# excel datagridview

如果我构建了一个期望用户使用复制粘贴功能的应用程序 一个excel的数据网格视图(作为一个简单的导出),我是否会冒很大的风险,这将在以后的.net / excel版本中不再起作用/给出奇怪的行为?

3 个答案:

答案 0 :(得分:3)

根据此MSDN article on copying data from a DataGridView,控件将在剪贴板上设置制表符分隔的字符串数据和表示已复制数据的HTML表。这些是相对标准的格式,以及交换数据的相对标准做法,您应该是安全的。

当然,没有人可以肯定地说明微软将在未来的产品版本中做些什么,所以总会有一些机会以后会出现问题。但是,微软擅长使事情充分向后兼容。

答案 1 :(得分:2)

出口实施总是存在依赖剪贴板的风险:

我不会说它很大但是你在导出这种方式时有效地要求麻烦 - 取决于系统上安装的内容(例如一些背景剪贴板观看应用程序)或不同版本的Excel或应用程序的使用情况终端服务器情况等 - 可能出错的事情列表是“无休止的”恕我直言。

使用某种机制来编写真实文件(XLS或XLSX)真是可行的方法。

有几个免费和商业库(不需要Excel存在)来编写Excel文件(有些甚至可以用少于10行代码导出DataGridView的内容!) :

您甚至可以使用“Excel-HTML格式”(sample sourceMS documentation)导出。

答案 2 :(得分:1)

是的,在某种程度上,当您假设第三方程序的某些功能保持不变时,您始终会冒这种风险。但是,微软长期保持软件向后兼容的历史悠久,因此可能不会在明年左右突然删除此功能。

如果必须保持兼容,请使用其他方法来交换数据。