Edraw Office Viewer component教程:將Microsoft Word嵌入VB.NET並使之自動化

Edraw office viewer component對於開發人員來講是一個將Microsoft Word文檔嵌入到vb.net應用程序中的簡單可靠的解決方案。工具

在VB.Net應用程序中嵌入word文檔的最佳方法是什麼?相信大多數人都記得OLE技術,它能夠將Excel圖表嵌入到Word文檔中。使用Office XP Primary Interpol Assemblies或嵌入WebBrowser控件並導航到相應的Office文檔等。可是全部這些技術都不支持完整的Microsoft Word功能。也有不少已知的錯誤。spa

本文將逐步介紹如何使用Edraw office viewer component在VB.NET應用程序中嵌入MS Word文件。若是你沒有officeviewer.ocx文件,請先安裝。
安裝地址:https://www.evget.com/product...操作系統

打開Visual Studio並建立一個新的VB.NET應用程序。
右鍵單擊HostOffice解決方案。而後單擊「Add Reference...」的選項。
clipboard.png.net

在彈出的對話框中,從瀏覽選項卡中選擇officeviewer.ocx文件。
clipboard.png設計

或從COM選項卡中選擇Edraw Office Viewer Component。
單擊肯定。Edraw Office Viewer Component引用此時已添加到新的vb.net項目中。
clipboard.png3d

切換到Form1的Form設計窗口。
clipboard.pngcode

將Edraw Office Viewer Component從「工具箱」面板拖到form1中。
clipboard.pngcomponent

添加如下VB.NET代碼來新建、打開、保存、關閉並打印一個word文檔,以下所示:orm

Public Class Form1
Private Sub btnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNew.Click
If Dialog1.ShowDialog() Then
If Dialog1.GetChooseType() = 1 Then
AxEDOffice1.CreateNew("Word.Application")
ElseIf Dialog1.GetChooseType() = 2 Then
AxEDOffice1.CreateNew("Excel.Application")
ElseIf Dialog1.GetChooseType() = 3 Then
AxEDOffice1.CreateNew("PowerPoint.Application")
ElseIf Dialog1.GetChooseType() = 4 Then
AxEDOffice1.CreateNew("Visio.Application")
ElseIf Dialog1.GetChooseType() = 5 Then
AxEDOffice1.CreateNew("MSProject.Application")
End If
End If
End Sub
Private Sub btnOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOpen.Click
AxEDOffice1.OpenFileDialog()
End Sub
Private Sub btnSaveAs_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSaveAs.Click
AxEDOffice1.SaveFileDialog()
End Sub
Private Sub btnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnClose.Click
AxEDOffice1.CloseDoc()
End Sub
Private Sub btnPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPrint.Click
AxEDOffice1.PrintDialog()
End Sub
Private Sub btnPreview_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPreview.Click
AxEDOffice1.PrintPreview()
End Sub
Private Sub btnToolbars_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnToolbars.Click
If AxEDOffice1.Toolbars = True Then
AxEDOffice1.Toolbars = False
Else
AxEDOffice1.Toolbars = True
End If
End Sub
Private Sub btnAbout_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAbout.Click
AxEDOffice1.AboutBox()
End Sub
End Class

打開配置管理器。將Active解決方案平臺更改成x86選項。
clipboard.png對象

而後建立VB.NET項目並開始運行。
clipboard.png

The office viewer component支持MS Word 9七、Word 2000、Word 200三、Word 200七、Word 2010。它能夠在Windows 2000/Xp/Vista/2008/7的32位或64位操做系統上運行。將MS Excel或PowerPoint、Visio、Project嵌入到VB.NET應用程序中,只須要改變Open方法的第二個參數。以下所示:

public void Open()
{ 
axEDOffice1.Open(sPath,「Excel.Application」); 
axEDOffice1.Open(sPath,「PowerPoint.Application」); 
axEDOffice1.Open(sPath,「Visio.Application」); 
axEDOffice1.Open(sPath,「MSProject.Application」); 
}

有了word組件,在Visual Basic應用程序中使用COM實現Word自動化就會變得十分簡單。從解決方案資源管理器引用中爲Word Object Library 11.0添加引用。在這裏我所用Word 2003,因此對象庫的版本是11.0。
下面的示例代碼顯示瞭如何構建一個最小的文檔,插入一個書籤,而且在隨後用文本更換空書籤。

Imports Microsoft.Office.Interop.Word
Private Sub Automating_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handle Automating.Click 
Dim word = AxEDOffice1.GetApplication()
word.Visible = True 
Dim doc As Document = AxEDOffice1.ActiveDocument()
Dim range As Range = doc.Range 
range.InsertAfter(「Range1」+ vbCrLf)
range.Collapse(WdCollapseDirection.wdCollapseEnd)
doc.Bookmarks.Add(「MijnBookmark」,range)
range.InsertAfter(「Range2」+ vbCrLf)
Dim bookmark As Bookmark = doc。書籤(1)
range = bookmark.Range 
range.Text =「Bookmark」+ vbCrLf 
range.Font.Color = WdColor.wdColorBlue 
End Sub

以上就是本次教程的所有內容,接下來會有更多相關教程,敬請關注!

相關文章
相關標籤/搜索