C#對(duì)象瀏覽器簡(jiǎn)單介紹
學(xué)習(xí)C#語(yǔ)言時(shí),經(jīng)常會(huì)遇到C#對(duì)象瀏覽器問(wèn)題,這里將介紹C#對(duì)象瀏覽器問(wèn)題的解決方法。
在這一章中,我們將使用Visual Studio .NET來(lái)創(chuàng)建一個(gè)新的類(lèi)庫(kù)工程。通過(guò)這個(gè)工程,你可以創(chuàng)建一個(gè)能被AutoCAD裝載的.NET dll文件。這個(gè)dll文件會(huì)向AutoCAD加入一個(gè)名為“HelloWorld”的新命令。當(dāng)用戶(hù)運(yùn)行這個(gè)命令后,在AutoCAD 命令行上將顯示“Hello World”文本。
1) 啟動(dòng)Visual Studio.NET,選擇”文件>新建>工程”(File> New> Project)。在新建工程對(duì)話(huà)框中選擇工程類(lèi)型為”Visual C#工程”,然后選擇”類(lèi)庫(kù)”模板,在工程名字框中輸入”Lab1”,然后選擇工程存放的位置。點(diǎn)擊確定按鈕來(lái)創(chuàng)建工程。
2) 在工程的Class1.cs文件中,一個(gè)公有類(lèi)“Class1”已經(jīng)被系統(tǒng)自動(dòng)創(chuàng)建了。接下來(lái)向這個(gè)類(lèi)加入命令。要加入命令,你必須使用AutoCAD .NET托管封裝類(lèi)。這些托管封裝類(lèi)包含在兩個(gè)托管模塊中。要加入對(duì)這兩個(gè)托管模塊的引用,請(qǐng)用鼠標(biāo)右鍵單擊”引用”然后選擇”添加引用”。在彈出的”添加引用”對(duì)話(huà)框中選擇”瀏覽”。在”選擇組件”對(duì)話(huà)框中,選擇AutoCAD 2006的安裝目錄(這里假定為C:\Program Files\AutoCAD 2006\),在這個(gè)目錄下找到“acdbmgd.dll”然后選擇并打開(kāi)它。再一次選擇”瀏覽”,在AutoCAD 2006的安裝目錄下找到“acmgd.dll”并打開(kāi)它。當(dāng)這兩個(gè)組件被加入后,請(qǐng)單擊”添加引用” 對(duì)話(huà)框中的”確定”按鈕。正如它們的名字所表示的,acdbmgd.dll包含ObjectDBX托管類(lèi),而acmgd.dll包含AutoCAD托管類(lèi)。
3) 使用C#對(duì)象瀏覽器(Visual Studio.NET的”查看>其它窗口>對(duì)象瀏覽器”菜單項(xiàng))來(lái)瀏覽加入的兩個(gè)托管模塊所提供的類(lèi)。請(qǐng)展開(kāi)“AutoCAD .NET Managed Wrapper”對(duì)象(在C#對(duì)象瀏覽器中顯示為acmgd),在整個(gè)教程中我們將使用這個(gè)對(duì)象中的類(lèi)。在本章中,我們將使用 “Autodesk.AutoCAD.EditorInput.Editor”類(lèi)的一個(gè)實(shí)例來(lái)在AutoCAD命令行中顯示文本。請(qǐng)?jiān)僬归_(kāi) “ObjectDBX .NET Managed Wrapper” 對(duì)象(在C#對(duì)象瀏覽器中顯示為acdbmgd),這個(gè)對(duì)象中的類(lèi)將被用來(lái)訪問(wèn)和編輯AutoCAD圖形中的實(shí)體(這部分內(nèi)容將在以后的章節(jié)中介紹)。
4) 引用了ObjectARX .NET 封裝類(lèi)后,我們就可以導(dǎo)入它們。在Class1類(lèi)的聲明語(yǔ)句(位于Class1.cs文件的頂部的)之前,導(dǎo)入ApplicationServices, EditorInput 和 Runtime命名空間。
- using Autodesk.AutoCAD.ApplicationServices;
- using Autodesk.AutoCAD.EditorInput;
- using Autodesk.AutoCAD.Runtime;
5) 接下來(lái)在類(lèi)Class1中加入命令。要加入能在AutoCAD 中調(diào)用的命令,你必須使用“CommandMethod”屬性。這個(gè)屬性由Runtime命名空間提供。在類(lèi)Class1中加入下列屬性和函數(shù)。
- [CommandMethod("HelloWorld")]
- public void HelloWorld()
- {
- }
【編輯推薦】