●第1章 VSTO入門概述1
1.1 VSTO簡述 1
1.1.1 VSTO的功能與特點 1
1.1.2 VSTO開發語言 2
1.1.3 VSTO開發環境配置 3
1.1.4 Visual Studio開發環境4
1.1.5 Visual Studio版本沿革4
1.1.6 Visual Studio的安裝 4
1.2 創建第一個C#應用程序 5
1.2.1 控制臺應用程序 5
1.2.2 Windows窗體應用程序 9
1.2.3 生成可執行文件11
1.3 認識Visual Studio開發環境11
1.3.1 【文件】菜單12
1.3.2 【視圖】菜單12
1.3.3 【項目】菜單12
1.3.4 菜單欄和工具欄的自定義13
1.3.5 Visual Studio選項14
1.4 Visual Studio項目組織結構14
1.4.1 解決方案14
1.4.2 項目17
1.4.3 類模塊18
1.4.4 引用管理18
1.5 使用幫助繫統19
1.5.1 設置幫助查看方式19
1.5.2 下載和安裝Help Viewer19
1.5.3 管理幫助內容19
本章要點回顧21
第2章 C#語法基礎 22
2.1 變量的聲明和賦值22
2.1.1 常用的數據類型22
2.1.2 賦值運算符23
2.1.3 變量的作用範圍23
2.2 字符與字符串處理24
2.2.1 字符變量24
2.2.2 字符串變量25
2.2.3 轉義字符26
2.2.4 字符串連接27
2.2.5 子字符串27
2.2.6 格式化字符串28
2.2.7 字符串的替換28
2.2.8 字符串與數組28
2.3 邏輯運算29
2.3.1 布爾型變量29
2.3.2 比較運算符30
2.3.3 多條件的與或非運算30
2.4 不同類型的強制轉換31
2.4.1 ToString31
2.4.2 Parse31
2.4.3 Convert32
2.5 使用數組33
2.5.1 數組的聲明和初始化33
2.5.2 一維數組33
2.5.3素的遍歷34
2.5.4 二維數組35
2.6 條件選擇語句37
2.6.運算符37
2.6.2 if語句38
2.6.3 switch語句39
2.7 循環語句40
2.7.1 while循環40
2.7.2 do循環41
2.7.3 for循環42
2.7.4 foreach循環43
2.8 流程控制語句43
2.8.1 break語句43
2.8.2 continue語句44
2.8.3 goto語句44
2.8.4 return語句45
2.9 輸出對話框(MessageBox)46
2.9.1 MessageBox語法46
2.9.2 自定義對話框的按鈕47
2.9.3 自定義對話框的圖標48
2.9.4 自定義對話框默認按鈕48
2.9.5 處理對話框的用戶響應48
2.10 輸入對話框(InputBox)49
2.11 過程與函數50
2.11.1 過程與函數的定義50
2.11.2 過程與函數的調用51
2.12 類的創建和使用52
2.12.1 非靜態類52
2.12.2 靜態類54
2.13 using指令55
2.14 錯誤處理55
本章要點回顧56
第3章 C#進階技術57
3.1 文件與文件夾操作57
3.1.1 System.IO命名空間57
3.1.2 文件與文件夾處理實例58
3.2 文本文件的讀寫59
3.3 數據庫操作60
3.4 使用資源文件61
3.4.1 添加資源文件62
3.4.2 資源文件中的字符串62
3.4.3 資源文件中的圖像63
3.5 使用正則表達式65
3.5.1 創建Regex對像65
3.5字符65
3.5.3 正則表達式選項66
3.5.4 正則表達式方法67
3.5.5 正則表達式測試器71
3.6 使用字典72
3.6.1 字典對像的創建72
3.6.2 根據鍵檢索值73
3.6.3 遍歷所有鍵名74
3.6.4 遍歷所有值74
3.6.5 去除重復74
3.7 窗體設計技術76
3.7.1 窗體的顯示76
3.7.2 窗體的卸載77
3.7.3 窗體與控件的事件78
3.7.4 使用窗體菜單82
3.7.5 使用工具欄85
3.7.6 使用右鍵菜單87
3.7.7 使用狀態欄88
3.7.8 使用文件選擇對話框90
3.7.9 運行期間動態增刪控件91
3.8 使用Windows API 函數94
3.8.1 窗口類名和句柄95
3.8.2使用Spy98
3.8.3使用UseAPI 100
3.8.4 獲取光標位置 101
本章要點回顧 101
第4章 C#操作Excel對像 102
4.1Excel對像模型概述102
4.1.1 Application對像 103
4.1.2 Workbook 對像 104
4.1.3 Worksheet 對像 104
4.1.4 Range對像 105
4.1.5 Window 對像 105
4.2創建可以訪問Excel對像的C#窗體應用程序 105
4.2.1 添加Excel 2010對像引用 105
4.2.2 添加Office 2010對像引用 105
4.3 操作Application對像107
4.3.1 獲取正在運行的Excel對像 107
4.3.2 創建新的Excel對像109
4.3.3 Application對像常用屬性 109
4.3.4 Application對像常用方法 110
4.3.5 Application對像常用事件 110
4.3.6 Application重要集合對像 111
4.4 操作Workbook 對像 112
4.4.1 Workbook 對像常用屬性 112
4.4.2 Workbook 對像常用方法 113
4.4.3 Workbook 對像常用事件 114
4.4.4 Workbook 重要集合對像 114
4.5 操作Worksheet 對像115
4.5.1 Worksheet 對像常用屬性 115
4.5.2 Worksheet 對像常用方法 116
4.5.3 Worksheet 對像常用事件 117
4.6 操作Range對像 117
4.6.1 Range對像常用屬性 117
4.6.2 Range對像常用方法 118
4.6.3 Range對像的遍歷 119
4.6.4 二維數組與Range數據交換 120
4.6.5 一維數組與Range數據交換 121
4.7 操作Commandbar對像 121
4.8 操作VBE工程 123
4.8.1 引用VBIDE類型庫 123
4.8.2 允許對VBA工程訪問123
4.8.3 操作VBE各級對像 125
4.9創建Excel自定義函數 125
4.9.1使用C#創建類庫 126
4.9.2工作表中使用C#開發的自定義公式 129
4.9.3VBA中調用C#開發的自定義公式 131
4.9.4C#中調用C#開發的自定義公式 131
4.9.5 客戶機使用C#制作的自定義函數132
本章要點回顧 133
第5章創建Office外接程序 134
5.1Office COM加載項簡介 134
5.2認識Office COM加載項管理對話框 134
5.3 創建第一個Office外接程序項目135
5.4 ThisAddin的啟動事件和卸載事件136
本章要點回顧137
第6章自定義Office功能區138
6.1 CustomUI概述138
6.1.1 CustomUI的意義140
6.1.2 CustomUI的作用範圍140
6.1.3 手工定制Office界面140
6.2 CustomUI與XML141
6.2.1 XML語法規則141
6.2.2 描述Office界面的XML142
6.2.3 使用Ribbon XML Editor148
6.3 Custo素詳解149
6.3.1 選項卡(t素150
6.3.2 組(gro素151
6.3.3 控件(contr素151
6.4 VSTO中使用功能區可視化設計器154
6.4.1 為按鈕指定回調過程156
6.4.2 Group中加入DialogBoxLauncher157
6.5 使用XML進行CustomUI定制159
本章要點回顧162
第7章自定義任務窗格163
7.1 任務窗格行為控制163
7.2 VSTO外接程序項目中添加任務窗格164
7.2.1 創建Excel 2010外接程序165
7.2.2 添加用戶控件165
7.2.3 靜態類中聲明任務窗格對像166
7.2.4 創建並顯示任務窗格167
7.3 功能區與任務窗格的交互控制169
7.3.1 利用功能區切換按鈕控制任務窗格的顯示隱藏169
7.3.2 處理自定義任務窗格事件172
7.3.3 接近卸載任務窗格173
本章要點回顧173
第8章自定義工具欄174
8.1 Office工具欄對像簡述174
8.1.1 Commandbar對像174
8.1.2 CommandbarControl對像175
8.1.3 自定義工具欄的作用和意義176
8.2 VSTO實現自定義工具欄176
8.2.1 創建自定義工具欄176
8.2.2 處理工具欄按鈕的回調178
8.2.3 修改右鍵菜單179
8.2.4 卸載外接程序時清除自定義180
本章要點回顧181
第9章 VSTO外接程序的部署分發182
9.1 客戶機搭建VSTO運行環境182
9.2 VSTO外接程序的簡單安裝183
9.3 使用Advanced Installer184
9.3.1 創建aip安裝包工程184
9.3.2 客戶機運行安裝包193
本章要點回顧194
第10章 VSTO開發Office文檔195
10.1 文檔自定義項編程概述195
10.2 文檔自定義項允許添加素195
10.3 創建Office文檔項目196
10.3.1 文檔上添加C#控件198
10.3.2 文檔項目的啟動事件過程198
10.4 文檔操作窗格概述199
10.5 文檔操作窗格綜合實例200
10.5.1 添加用戶控件到文檔窗格202
10.5.2 添加多個相同控件到文檔窗格204
10.5.3 使用代碼創建窗體控件並添加到文檔操作窗格205
10.5.4 定制功能區按鈕控制文檔操作窗格206
10.6 文檔自定義項的部署分發210
本章要點回顧211
第11章 VSTO開發資源大全212
11.1 Office 2003以下版本工具欄和控件的自定義212
11.1.1 OfficeCommandbarDesigner212
11.1.2 OfficeCommandbarViewer213
11.1.3 FaceIDViewer213
11.2 Office 2007以上版本功能區的自定義215
11.2.1 Office2010ControlIDs215
11.2.2 imageMso7345216
11.2.3 OfficeCustomUIEditor217
11.2.4 Ribbon XML Editor217
11.2.5 Ribbon回調函數大全217
11.3 編程環境輔助工具218
11.3.1 VBE2014219
11.3.2 Visual Studio Addin2016220
第12章 C#與VB/VBA語言的差異對比222
12.1 變量必須聲明222
12.2 嚴格的類型匹配222
12.3 項目的自動保存222
12.4 嚴格區分大小寫223
12.5 語句結束必須加分號223
12.6 語句塊223
12.7 調用其他函數圓括號不能少224
12.8 數組的下標為0224
12.9 數組或集合對像的索引使用方括號225
本書從初學者角度出發,詳細介紹了使用C#語言進行VSTO開發需要掌握的知識。全書分為12章,內容包括VSTO入門概述、C#語法基礎、C#進階技術、C#操作Excel對像、創建Office外接程序、自定義Office功能區、自定義任務窗格、自定義工具欄,VSTO外接程序的部署分發、VSTO開發Office文檔、VSTO開發資源大全、C#與VB/VBA語言的差異對比。書中所有章節涉及的程序代碼都給出了詳細的注釋。本書可以讓讀者輕松熟悉Visual Studio開發環境,跨入C#編程的門檻,掌握VSTO開發的步驟。本書可作為職場辦公人員、高校理工科師生、Office專業開發人員自學用書,也可以作為Office編程培訓講師的教學參考書。