如何使用 WebBrowser 控件打开 Office 文档
1个回答
展开全部
也就是说,在调用 WebBrowser1.Navigate 时,该调用会在文档被完全加载之前 将控件返回到 Visual Basic 应用程序。如果打算为所包含的文档实现自动操作,则需要使用 NavigateComplete2 事件在文档完成加载后发出通知。使用传入的 WebBrowser 对象的文档属性获取对 Office 文档对象的引用,该对象在前述代码中设置为 oDocument。 WebBrowser 控件不支持菜单合并。如果需要将文档的菜单项与 Visual Basic 菜单一起显示,则必须改用 OLE 容器控件。 WebBrowser 控件在显示 Office 文档之前通常会隐藏所有停靠工具栏。您可以使用“自动化”功能通过类似下面的代码来显示浮动工具栏:
With oDocument.Application.CommandBars("Standard") .Position = 4 '[msoBarFloating] .Visible = True End With 较新版本的 Internet Explorer(5.0 和更高版本)还允许您使用以下代码来显示停靠工具栏:
' This is a toggle option, so call it once to show the ' toolbars and once to hide them. This works with Internet Explorer 5 ' but often fails to work properly with earlier versions... WebBrowser1.ExecWB OLECMDID_HIDETOOLBARS, OLECMDEXECOPT_DONTPROMPTUSER 已知在一个项目中有多个 WebBrowser 控件,并且每个控件都加载了相同类型的 Office 文档(即,全部都是 Word 文档或者全部都是 Excel 电子表格)时,会出现多种问题。建议一个项目只使用一个控件,并且一次只浏览到一个文档。
最常见的问题发生在 Office 命令栏上(命令栏显示为禁用)。如果在同一个窗体上有两个 WebBrowser 控件,且两个控件都加载了 Word 文档,而您使用了前面某一种技术显示了工具栏,那么只有一组工具栏将是活动的,且只有该工具栏能正常工作。另一个则被禁用,且无法使用。
With oDocument.Application.CommandBars("Standard") .Position = 4 '[msoBarFloating] .Visible = True End With 较新版本的 Internet Explorer(5.0 和更高版本)还允许您使用以下代码来显示停靠工具栏:
' This is a toggle option, so call it once to show the ' toolbars and once to hide them. This works with Internet Explorer 5 ' but often fails to work properly with earlier versions... WebBrowser1.ExecWB OLECMDID_HIDETOOLBARS, OLECMDEXECOPT_DONTPROMPTUSER 已知在一个项目中有多个 WebBrowser 控件,并且每个控件都加载了相同类型的 Office 文档(即,全部都是 Word 文档或者全部都是 Excel 电子表格)时,会出现多种问题。建议一个项目只使用一个控件,并且一次只浏览到一个文档。
最常见的问题发生在 Office 命令栏上(命令栏显示为禁用)。如果在同一个窗体上有两个 WebBrowser 控件,且两个控件都加载了 Word 文档,而您使用了前面某一种技术显示了工具栏,那么只有一组工具栏将是活动的,且只有该工具栏能正常工作。另一个则被禁用,且无法使用。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询