資源描述:
《arcgis engine.c#開發(fā)gis應(yīng)用》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、.利用ArcGISEngine、VS.NET和Windows控件開發(fā)GIS應(yīng)用Dixon整理此過程說明適合那些使用.NET建立和部署應(yīng)用的開發(fā)者,它描述了使用ArcGIS控件建立和部署應(yīng)用的方法和步驟。你可以在下面的目錄下找到相應(yīng)的樣例程序:<安裝目錄>DeveloperKitSamplesDeveloper_Guide_ScenariosArcGIS_EngineBuilding_an_ArcGIS_Control_ApplicationMap_Viewer注:ArcGIS樣例程序不包含在ArcGISEngine開發(fā)工具包“
2、典型”安裝方式中。如果你沒有安裝它們,則可以重新運(yùn)行開發(fā)工具包安裝向?qū)?,選擇“定制”或“修改”方式,并選擇軟件開發(fā)包下的樣例項(xiàng)進(jìn)行安裝。一、項(xiàng)目描述利用視窗控件建立應(yīng)用程序的目標(biāo)是演示并使你熟悉在微軟VisualStudio.NETAPI中使用標(biāo)準(zhǔn)ArcGIS控件開發(fā)和部署GIS應(yīng)用所需的步聚。本節(jié)中使用了VisualStudio.NET開發(fā)環(huán)境中的MapControl、PageLayoutControl、TOCControl和ToolbarControl等視窗控件。COM、Java和C++程序員應(yīng)該參考如下章節(jié):利用ActiveX建立應(yīng)
3、用程序、利用可視化JavaBeans建立應(yīng)用程序、建立命令行方式的Java應(yīng)用和建立命令行方式的C++應(yīng)用。本節(jié)演示了創(chuàng)建查看ArcMap和ArcGIS桌面應(yīng)用圖形文檔的GIS應(yīng)用程序的步驟。此節(jié)包含了以下技術(shù):l???在微軟VisualStudio.NET中加載和嵌入ArcGIS控件。l???向PageLayoutControl和MapControl中加載圖形文檔。l???設(shè)置ToolbarControl和TOCControl的綁定控件。l???處理窗口縮放。l???向ToolbarControl添加ArcGISEngine命令和工具。
4、l???創(chuàng)建彈出式菜單l???在TOCControl中管理標(biāo)簽編輯...l???在MapControl中繪制圖形。l???為MapControl、PageLayoutControl和ToolbarControl創(chuàng)建定制工具。l???用戶化ToolbarControl。l???在Windows操作系統(tǒng)中部署應(yīng)用。二、概述本方案使用微軟VisualStudio.NET開發(fā)環(huán)境加以實(shí)現(xiàn),并使用了ESRIinterop程序集(InteropAssemblies),它服務(wù)于被放置在.NET窗體上的、位于.NET窗體控件(.NETWindowsCon
5、trols)中的ArcGIS控件,這些程序集在托管的.NET代碼和非托管的COM代碼之間起了橋梁作用。對COMArcGIS控件(COMArcGISControls)成員的引用都要經(jīng)過Interop程序集,然后到達(dá)實(shí)際的COM對象。同樣,也從COM對象經(jīng)過Interop程序集到達(dá).NET應(yīng)用程序。每個(gè)ArcGISEngine控件具有方法、屬性與事件,它們能夠被控件嵌入的容器(如,.NET窗體)訪問。每個(gè)控件對象及其功能可以與其他ESRIArcObjects和自定義控件組合使用,創(chuàng)建用戶化的客戶應(yīng)用程序。此方案是使用了C#和VisualBas
6、ic.NET兩種語言創(chuàng)建,但以下技術(shù)實(shí)現(xiàn)集中傾向于C#方案。許多開發(fā)者可能會感覺用VisualBasic.NET更舒服,那是因?yàn)樗麄円呀?jīng)比較熟悉VisualBasic6.0代碼,然而,對于Java和C++程序員來說,他們將會覺得對C#程序語言的語法更熟悉。無論你使用哪種開發(fā)環(huán)境,對于使用ArcGIS控件的好壞既依賴于你的編程環(huán)境技術(shù),也依賴于你所掌握的ArcObjects技術(shù)。在本方案中,使用ToolbarControl、TOCControl、PageLayoutControl和MapControl來為應(yīng)用程序提供用戶界面。這些ArcGI
7、S控件與其他ArcObjects和ArcGISEngine命令被開發(fā)者一起使用,用來創(chuàng)建一個(gè)GIS視窗應(yīng)用。三、設(shè)計(jì)此方案在設(shè)計(jì)時(shí),首先強(qiáng)調(diào)了ArcGIS控件如何互相之間進(jìn)行交互,其次,向開發(fā)者解釋說明了ArcGIS控件對象模型的一部分。...每個(gè).NETArcGISEngine控件包含有一套能夠被嵌入其內(nèi)的窗口即時(shí)訪問的屬性頁。這些屬性些為控件屬性和方法的選擇提供了捷徑,并且允許開發(fā)者不寫任何代碼即可創(chuàng)建一個(gè)應(yīng)用程序。本方案并沒有使用屬性頁,而是采用寫代碼的方式建立應(yīng)用程序。關(guān)于屬性頁的更進(jìn)一步的信息,請參考ArcGIS開發(fā)幫助(Arc
8、GISDeveloperHelp)。四、條件需求要順利地完成以下方案,你需要以下條件(對于部署的需求將在后續(xù)的部署章節(jié)涉及到):l??????安裝具有授權(quán)文件的ArcGISEngine開發(fā)工具