1

我一整天都在尝试解决这个问题,希望这里有人已经知道如何做到这一点 - 我试图在我的 Windows 窗体中显示 Excel 2010 工作表,没想到会这么难。

所以...从我在网上看到的情况来看,最好的方法是通过 WebBrowser 控件 - 我的代码非常简单:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    Dim strfilename = Application.StartupPath & "\SheetXX.xlsx"
    WebBrowser1.Navigate(strfilename, False)

End Sub

但它会弹出一个文件下载对话框。起初,我的问题是,即使我按下“打开”按钮,它也会在单独的窗口中打开 Excel。我设法使用此注册表修复程序修复了这个问题,但它仍然会在我的网络浏览器中打开它之前弹出对话框,我的最终用户会抱怨。

其他在线解决方案提到了Microsoft dsoframer,但这对我也根本不起作用......

任何人都知道如何使这项工作?简单明了,我只想在我的 windows 窗体中查看 Excel 工作表。

谢谢!!

4

2 回答 2

0

我想出了这个解决方法:

首先,您必须将 Excel 文件保存为 MHT 格式。然后,只需添加一个 iFrame:

<p style="text-align:center">

    <iframe id="ExcelID" src="Reports/ExcelFile.mht?wmode=transparent" 
     width="100%" height="800" wmode="transparent" style="z-index: -1"></iframe>
</p>

wmode="transparent" style="z-index: -1是因为有时菜单项“隐藏”在 iFrame 的内容后面。我不知道你有没有,但你可以删除它。

简单的方法:

 <iframe src="Reports/ExcelFile.mht" width="100%" height="800"></iframe>

问候

于 2012-10-29T17:12:24.997 回答
0

对于遇到类似问题的其他任何人,我发现做我想做的最好的解决方案就是这个。希望它也能帮助别人!!

于 2013-10-30T12:31:55.220 回答