日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

VSTO之旅系列(一):VSTO入門

 法效天地 2014-01-29

引言:

因為工作的原因,這段時間一直在看VSTO的相關(guān)的內(nèi)容的,因此希望通過這個系列來記錄下我學習的過程和大家分享Office開發(fā)的相關(guān)知識,希望以后有朋友從事這方面的也希望通過本系列提供點幫助。

本專題將簡單介紹VSTO和VSTO中的一些基本概念進行介紹,下面就直接進入正題了。

 

1. VSTO介紹

首先介紹下VSTO的歷史吧,之前都是用VBA來開發(fā)Office解決方案的,后來微軟開發(fā)出了VSTO這個工具包來創(chuàng)建自定義的Office應用程序,使得開發(fā)Office應用程序更加簡單,并且用VSTO來開發(fā)office應用程序可以使用Visual studio開發(fā)環(huán)境中的眾多功能和CLR提供的內(nèi)存管理,垃圾回收等功能。VSTO到現(xiàn)在有5個版本的,下面通過一張圖來說明VSTO的發(fā)展過程:

通過上圖簡單介紹下VSTO的發(fā)展歷程的,這里也就不多描述VSTO的歷史了,只是讓大家有個這樣的認識,下面就具體介紹下什么是VSTO。

VSTO就是一個創(chuàng)建自定義Office應用程序的Visual Studio工具包,這個工具包里面提供了很多類庫來讓我們調(diào)用,然后工具包中類再與Office客戶端進行交互。

打開VS2010后可以看到現(xiàn)在支持的一些模版,下面就是VS2010中支持模版的一張圖片:

從圖中可以看出創(chuàng)建的Office應用程序大致有三類:插件(Add-in),文檔級別(如Excel Workbook)和模版(Template)。創(chuàng)建的Add-in和模版應用程序即應用程序級別的定制程序,它指的是對整個應用程序都可用。文檔級別的應用程序指的是程序代碼只關(guān)聯(lián)到特定的文檔二不是整個應用程序,然而需要注意的,文檔級別的應用程序的代碼并不像VBA程序那樣存放在文檔或模版里的,而是存放在項目的程序集中的。

2 主互操作程序集(PIA)的介紹

Office應用程序如Word,Excel和Outlook都是用非托管代碼來寫的, 而我們創(chuàng)建的VSTO工程使用的是托管代碼,這時候就需要使用互操作程序集來與Office應用程序里的非托管COM對象交互,然后主互操作程序集(PIA)指的是官方發(fā)布的互操作程序集,如果電腦中安裝了PIA,當你添加對類庫的引用時,那么Visual Studio會自動加載PIA,微軟為Office應用程序提供了PIA,如EXcel PIA就是Microsof.Office.Interop.Excel.dll,其他應用程序也類似。當安裝了Office產(chǎn)品后,PIA會自動安裝在電腦的GAC目錄里,每當創(chuàng)建一個VSTO解決方案, Visual Studio會自動為該解決方案加載合適的Office PIA引用和其他程序集,具體PIA目錄見下圖:

如果安裝完Office產(chǎn)品后沒有安裝相應的PIA到GAC,可以執(zhí)行Office的安裝程序進行修復。

 

3. 宿主項和宿主控件的介紹

 宿主項是表示Office對象模型入口點的。應用程序外接程序使用Microsoft.Office.Tools.AddIn類為宿主項,此宿主項提供對宿主應用程序和成員的對象模型的訪問,可以通過宿主項添加數(shù)據(jù)綁定的能力和提供額外的事件來擴展本地Office文檔。而創(chuàng)建一個Excel解決方案會創(chuàng)建4個Excel宿主項:Workbook,Sheet1,Sheet2和Sheet3,如下圖:

宿主項是Word和Excel等設(shè)計界面,擔當控件容器的作用,就像VBA里把控件添加到UserForm上一樣,我們可以把Windows Form 控件和宿主控件添加到宿主項上,值得注意的是Workbook宿主項,它不作為宿主控件的容器,在工作簿宿主項中不能添加控件只能包含組件。

宿主項控件了Office的對象模型,它是基于本機Office對象的,本機Office對象使用的是Microsoft.Office.Interop.Word命名控件下定義的類型而宿主項和宿主控件定義在Microsoft.Office.Tools.Word(Excel)等命名控件下的。宿主控件與本機對象的功能類似,但是宿主控件擴展了本機對象,添加了數(shù)據(jù)綁定和事件等功能

 

4.總結(jié)

到這里本專題要介紹的內(nèi)容已經(jīng)講完了,后面的專題將介紹利用VSTO來創(chuàng)建自定義的Office應用程序,如果大家有關(guān)于Office想實現(xiàn)的功能也可以在下面留言,后面通過學習也會和大家分享大家想要實現(xiàn)的功能,希望在這里我們一起討論,一起進步。

 

 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多