龙源期刊网 http://www.doczj.com/doc/7c6e747d7375a417866f8fac.html
C# winform中嵌入Excel实现复杂表格的显示和控制
作者:斯琴巴图杨利润
来源:《软件导刊》2013年第04期
摘要:阐述了在C#winform程序中,使用WebBrowser控件将Excel嵌入到窗体内,以实现复杂表格显示和控制的具体方法。
关键词:Excel;C#;WebBrowser;复杂表格显示
中图分类号:TP301文献标识码:A文章编号:16727800(2013)004002602
0引言
在开发基于报表的管理信息系统时,用户可能会明确要求在窗体上显示他们自己设计的表格,而这些表格中大多包含有样式非常复杂的表格。此时,想利用C#中自带的表格控件实现需求几乎是不可能的。Excel是大众熟悉的电子表格处理软件,其报表处理能力和数据表现能力都非常强大,用其制作样式复杂的表格是一件非常简单的事情。如果能将Excel文件嵌入到C#语言开发的winform程序中,就可以非常容易地解决在窗体上显示复杂表格的需求,又能够实现让用户便捷地编辑数据和导出Excel文件等功能。
1实现思路
虽然Excel可以制作样式复杂的表格,但是软件系统的数据都被存放在数据库内,因此必须编写代码将数据库文件内的数据输出到Excel文件内,再将该Excel文件内容显示到窗体上就可以满足用户需求。具体实现思路如下:①按照用户设计的表格样式,用Excel制作表格模板文件;②为了不破坏模板文件,在使用文件之前,通过代码复制模板文件,以后的所有操作都在新文件上执行;③编写C#程序,通过http://www.doczj.com/doc/7c6e747d7375a417866f8fac.html技术从数据库内提取数据,向Excel文件的指定单元格输出数据并保存文件;④将Excel文件嵌入到窗体中,供用户浏览修改,并可以保存修改后的内容。
2C#中控制Excel文件的方法
2.1引用Excel类型库
在C#中控制Excel文件的前提是添加Excel的引用。根据计算机上安装的Excel软件版本的不同,组件名称和类型库的版本也不一样,此处Excel的版本为2003版本,因此COM组件名称为Microsoft Excel 11.0 Object Library。引用Excel类型库的具体操作方法为:①在解决方案资源管理器中,右击“引用”菜单项,选择“添加引用”;②在“添加引用”对话框中,选择