[转]将Excel用户界面嵌入到自己的Windows Form中

[复制链接]
查看11 | 回复1 | 2007-1-16 17:14:42 | 显示全部楼层 |阅读模式
将Excel用户界面嵌入到自己的Windows Form中
由于目前,C#和vb.net都不支持OLE技术(参见微软支持中心Info:304562),,所以只有使用WebBrowser控件来完成此功能。(以下方法参见微软支持中心Howto:304662)
1、右击工具箱,选择自定义工具箱,添加COM组件,选择“Microsoft Web 浏览器”(对应文件是\winnt\system32\shdocvw.dll),确定。在工具箱中将会出现文本为Explorer的WebBroser控件图标。
2、在Form1中添加WebBrowser控件。(对象名却省是axWebBrowser1)
3、假定要打开的excel文件是: c:\a.xls。
string strFileName = @"c:\a.xls";
Object refmissing = System.Reflection.Missing.Value;
axWebBrowser1.Navigate(strFileName, ref refmissing , ref refmissing , ref refmissing , ref refmissing);
值得注意的是用WebBrowser控件不支持菜单合并,也就是说无法把Excel表的菜单带入到我们的程序中。这是相对于OLE实现方法的一大缺点。幸好提供了可以把工具栏添加进来的功能,通过工具栏可以进行许多Excel专有的操作。
//下面这句可以将excel本身的工具调添加进来
axWebBrowser1.ExecWB(SHDocVw.OLECMDID.OLECMDID_HIDETOOLBARS, SHDocVw.OLECMDEXECOPT.OLECMDEXECOPT_DONTPROMPTUSER,ref refmissing , ref refmissing);
回复

使用道具 举报

千问 | 2007-1-16 17:14:42 | 显示全部楼层
看看今天是否有空试试看
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行