4. 將Excel表格嵌入Word文檔
Excel表格填充完成后,我們將這個表格嵌入到Word文檔中。在主函數(shù)Main()的末尾添加如下代碼,它將創(chuàng)建一個空的Word文檔,然后通過調(diào)用函數(shù)PasteSpecial(),將Excel表格以鏈接的形式粘貼到Woed文檔中:
var word = new Word.Application(); word.Visible = true; word.Documents.Add(); word.Selection.PasteSpecial(Link: true, DisplayAsIcon: true);
這里需要說明的是,PasteSpecial()函數(shù)實際上有7個參數(shù),這些參數(shù)都是可選的。如果是在C# 3.0中,我們必須全部給定這7個參數(shù),不管這些參數(shù)是否真正需要。在C# 3.0中,PasteSpecial()函數(shù)的調(diào)用應該是這個樣子:
// C# 3.0 code. Not necessary in C# 4.0! object iconIndex = System.Reflection.Missing.Value; object link = true; object placement = System.Reflection.Missing.Value; object displayAsIcon = true; object dataType = System.Reflection.Missing.Value; object iconFileName = System.Reflection.Missing.Value; object iconLabel = System.Reflection.Missing.Value; word.Selection.PasteSpecial(ref iconIndex, ref link, ref placement, ref displayAsIcon, ref dataType, ref iconFileName, ref iconLabel);
而在C# 4.0中,因為它支持了可選參數(shù),使得原來需要15行代碼才能完成的工作,現(xiàn)在只需要一行代碼。大象減肥了!
5. 運行解決方案
到此為止,我們就完成了所有的開發(fā)工作,按下F5,運行整個解決方案,我們應該可以看到如下的運行結(jié)果:
圖3 運行結(jié)果
6. No-PIA部署
開發(fā)完成后,最后的任務就是將應用程序部署到目標機器上。在以前的Office開發(fā)中,我們除了需要在目標機器上部署我們的應用程序之外,還需要部署一大堆應用程序運行必需的互操作程序集,這使得Office應用開發(fā)起來困難,想用起來也不簡單。
為了讓大家理解Office應用程序?qū)ffice互操作程序集的依賴,我們可以使用IL DASM工具查看應用程序所引用的程序集。通過在Visual Studio命令行工具(Visual Studio command prompt)中執(zhí)行ildasm命令,我們可以運行IL DASM工具,然后打開我們剛剛開發(fā)的應用程序OfficeDev.exe,可以看到如下的界面:
圖4 使用IL DASM查看應用程序
雙擊其中的“Manifest”,我們可以在彈出的窗口中看到應用程序?qū)icrosoft.Office.Interop.Excel和Microsoft.Office.Interop.Word的引用:
出處:藍色理想
責任編輯:bluehearts
上一頁 Visual Studio 2010特性支持Office [3] 下一頁 Visual Studio 2010特性支持Office [5]
◎進入論壇計算機技術版塊參加討論
|