欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C#.NET如何綁定Office

這篇文章主要介紹了C#.NET如何綁定Office,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)專注于掇刀網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供掇刀營銷型網(wǎng)站建設(shè),掇刀網(wǎng)站制作、掇刀網(wǎng)頁設(shè)計(jì)、掇刀網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造掇刀網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供掇刀網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

C#.NET綁定Office晚期綁定

與早期綁定不同,C#.NET綁定Office晚期綁定要等到運(yùn)行時(shí)才會(huì)將屬性和方法調(diào)用綁定到它們的對(duì)象。為此,目標(biāo)對(duì)象必須實(shí)現(xiàn)一個(gè)特殊的 COM 接口:IDispatch。利用 IDispatch::GetIDsOfNames 方法,Visual C# 可以詢問對(duì)象支持哪些方法和屬性,然后,IDispatch::Invoke 方法允許 Visual C# 調(diào)用這些方法和屬性。這種晚期綁定的優(yōu)點(diǎn)是:它消除了早期綁定所固有的某些版本依賴性。然而,它也有以下缺點(diǎn):省略了對(duì)自動(dòng)化代碼完整性的編譯時(shí)檢查,也不提供“智能感知”功能(該功能可提供有助于正確調(diào)用方法和屬性的提示)。

要在 Visual C# 中使用C#.NET綁定Office晚期綁定,請(qǐng)使用 System.Type.InvokeMember 方法。此方法調(diào)用 IDispatch::GetIDsOfNames 和 IDispatch::Invoke 來綁定到自動(dòng)化服務(wù)器的方法和屬性。 

創(chuàng)建使用晚期綁定的自動(dòng)化客戶端

啟動(dòng) Microsoft Visual Studio .NET。在文件菜單上,單擊新建,然后單擊項(xiàng)目。從 Visual C# 項(xiàng)目類型中選擇 Windows 應(yīng)用程序。默認(rèn)情況下會(huì)創(chuàng)建 Form1。

在視圖菜單上,選擇工具箱以顯示工具箱,然后向 Form1 添加一個(gè)按鈕。

雙擊 Button1。將出現(xiàn)該窗體的代碼窗口。

在代碼窗口中,將以下代碼:

private void button1_Click(object sender, System.EventArgs e)   {  }  替換為:private void button1_Click(object sender, System.EventArgs e)  {  object objApp_Late;  object objBook_Late;  object objBooks_Late;  object objSheets_Late;  object objSheet_Late;  object objRange_Late;  object[] Parameters;  try  {  // Instantiate Excel.  objApp_Late = (object)new Excel.Application();  //Get the workbooks collection.  objBooks_Late = objApp_Late.GetType().InvokeMember( "Workbooks",  BindingFlags.GetProperty, null, objApp_Late, null );  //Add a new workbook.  objBook_Late = objBooks_Late.GetType().InvokeMember( "Add",  BindingFlags.InvokeMethod, null, objBooks_Late, null );  //Get the worksheets collection.  objSheets_Late = objBook_Late.GetType().InvokeMember( "Worksheets",  BindingFlags.GetProperty, null, objBook_Late, null );  //Get the first worksheet.  Parameters = new Object[1];  Parameters[0] = 1;  objSheet_Late = objSheets_Late.GetType().InvokeMember( "Item",  BindingFlags.GetProperty, null, objSheets_Late, Parameters );  //Get a range object that contains cell A1.  Parameters = new Object[2];  Parameters[0] = "A1";  Parameters[1] = Missing.Value;  objRange_Late = objSheet_Late.GetType().InvokeMember( "Range",  BindingFlags.GetProperty, null, objSheet_Late, Parameters );  //Write "Hello, World!" in cell A1.  Parameters = new Object[1];  Parameters[0] = "Hello, World!";  objRange_Late.GetType().InvokeMember( "Value", BindingFlags.SetProperty,  null, objRange_Late, Parameters );  //Return control of Excel to the user.  Parameters = new Object[1];  Parameters[0] = true;  objApp_Late.GetType().InvokeMember( "Visible", BindingFlags.SetProperty,  null, objApp_Late, Parameters );  objApp_Late.GetType().InvokeMember( "UserControl", BindingFlags.SetProperty,  null, objApp_Late, Parameters );  }  catch( Exception theException )  {  String errorMessage;  errorMessage = "Error: ";  errorMessage = String.Concat( errorMessage, theException.Message );  errorMessage = String.Concat( errorMessage, " Line: " );  errorMessage = String.Concat( errorMessage, theException.Source );  MessageBox.Show( errorMessage, "Error" );  }  }

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“C#.NET如何綁定Office”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來學(xué)習(xí)!

文章名稱:C#.NET如何綁定Office
標(biāo)題鏈接:http://www.chinadenli.net/article2/piigoc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)網(wǎng)站制作做網(wǎng)站用戶體驗(yàn)建站公司網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)