【发布时间】:2013-11-25 12:19:33
【问题描述】:
我正在开发一个多线程应用程序,我面临着必须使用剪贴板的问题(我正在使用 Qlikview API - 我需要将表格复制到 excel 中),问题是我认为会发生什么是这样的: 在线程#1 上,我打开 QW 文档并复制表格,在将其粘贴到 Excel 工作表之前,线程#2 出现并使用剪贴板从其文档中复制表格。我很好奇是否甚至可以从多线程应用程序中使用剪贴板?我已经阅读了有关使用剪贴板的各种内容,唯一清楚的一点是该方法必须是 STA(?)。所以我现在有点困惑。谢谢你
【问题讨论】:
-
你试过了吗?你有错误吗?请发布一些代码
-
如果可以的话,我会避免以这种方式使用剪贴板。没有剪贴板就没有办法使用 Qlikview API 来获取数据吗?如果是这样,您绝对可以使用 Excel 自动化互操作将数据直接插入工作表中,而无需借助剪贴板。
-
我受限于 API 为导出提供的内容。目前我将所有表导出为 xml 文件,然后我计划将它们反序列化为数据表 .. 然后使用 openXML 创建 excel。似乎是一个非常紧凑的计划,直到我意识到使用这种方法不仅会丢失格式,而且似乎我会丢失重要的行和列(对于具有行跨度和列跨度的复杂表) - qlikview 在导出后不提供准确的 XML。它也可以导出到 Excel,但没有模板的可能性,也不能在同一个 excel 文件中导出多个表
标签: c# multithreading clipboard