以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]打开Word 文件  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90073)

--  作者:zcgmxf
--  发布时间:2016/9/5 7:19:00
--  [求助]打开Word 文件
老师,如何在打开窗口1 时 直接用窗口1(webbrowser控件)打开当前行对应的“内容”(Word文件),并隐藏Word工具,禁止编辑文档。谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:webbrowser控制word_测试.table

[此贴子已经被作者于2016/9/5 18:49:32编辑过]

--  作者:有点蓝
--  发布时间:2016/9/5 9:15:00
--  
http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=89515&skin=0



--  作者:zcgmxf
--  发布时间:2016/9/5 22:12:00
--  

正是这个例子中的,如何在打开窗口1 时 直接用窗口1(webbrowser控件)打开当前行对应的“内容”(Word文件),并隐藏Word工具,禁止编辑文档。谢谢!


--  作者:有点蓝
--  发布时间:2016/9/5 22:41:00
--  
axWebBrowser = Nothing
Dim dr As Row = CurrentTable.Current
If dr IsNot Nothing Then
    Dim web As Object = e.Form.Controls("WebBrowser1").basecontrol
    web.Navigate(ProjectPath & "Attachments\\" & dr("内容"))
    
    Do Until axWebBrowser IsNot Nothing
        Application.DoEvents
    Loop
    
    Dim oDocument As object = axWebBrowser.Gettype().InvokeMember("Document", System.Reflection.BindingFlags.GetProperty, Nothing, axWebBrowser, Nothing)
    Dim oApplication As object = axWebBrowser.Gettype().InvokeMember("Application", System.Reflection.BindingFlags.GetProperty, Nothing, oDocument, Nothing)
    
    oApplication.ActiveWindow.DocumentMap = False
    oDocument.Protect (Password:="123456", NoReset:=False, Type:= _
    MsWord.WdProtectionType.wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=False)
    oDocument.saved = True
    vars("doc") = oDocument
End If

Dim refmissing As [Object] = System.Reflection.Missing.Value
Dim args As Object() = New Object(3) {}
args(0) = 24
args(1) = 2
args(2) = refmissing
args(3) = refmissing
axWebBrowser.[Gettype]().InvokeMember("ExecWB", 256, Nothing, axWebBrowser, args)

--  作者:zcgmxf
--  发布时间:2016/9/6 6:48:00
--  
谢谢!
--  作者:zcgmxf
--  发布时间:2016/9/22 23:24:00
--  

老师,您上次告诉我的上面是代码,窗口都打不开,必须加上

Dim web1 As Windows.Forms.WebBrowser
web1 = e.Form.Controls("WebBrowser1").baseControl
AddHandler web1.DocumentCompleted,addressof WebBrowser1_DocumentCompleted
axWebBrowser = Nothing

 

才能执行。但是,如果当前行内容 为空,会有错误提示。请教该如何处理。foxtable 外的东西我真的一点都不懂。


--  作者:zcgmxf
--  发布时间:2016/9/22 23:24:00
--  


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160922231909.png
图片点击可在新窗口打开查看

 

     已解决了

[此贴子已经被作者于2016/9/23 7:00:41编辑过]