




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
frmMain.es[Design]—aPage:iMetcoln'oOrro-Microx^tC#2006Exp<e»Ed«▼a为大田J1电》习LI3▼XSolutionExplorer•Solution'MeteoInfoDem^▼frmMain.es[Design]—aPage:iMetcoln'oOrro-Microx^tC#2006Exp<e»Ed«▼a为大田J1电》习LI3▼XSolutionExplorer•Solution'MeteoInfoDem^▼4X*I邑令m[7鸣'网*笠霁咤।」於部台;।出出0;MeteolnfoDemoErrorU«t00Err。。为0Warnings①0Mcwgz▼2XDescncxionFielineColumnProject和vodOSolution'MeteoInfoOemo'(1project).RMctooInfoDcmo■勾PropertiesFaheTrueTrue798,450Auto^ndowsOefAultLocationMeteolnfoDemoMeteolnfo二次开发教程(一)由于Meteolnfo几经升级,原来写的二次开发教程已经难以满足需求,因此重新开课讲解,有兴趣的朋友最好能根据讲解进行实践。第一课先讲讲最基本的引用Meteolnfo类库和添加LayersLegend、MapView和MapLayout控件。上述3个控件是Meteolnfo类库里最重要的控件:LayersLegend是管理MapFrame和Layer的(还有Group)MapView是地图显示控件MapLayout是图形版面管理控件。使用过Meteolnfo桌面软件应该很容易理解这几个控件的用途。本教程使用的是最新Meteolnfo类库(MeteolnfoC.dll),可以在Meteolnfo软件中找到。开发平台是MicrosoftVisualC#2008ExpressEdition,当然2010也是可以的。1>新建桌面程序项目,并引用Meteolnfo类库:新建一个项目:H。EditViowProjectBuildD^bugDo3FormatTook\MndowHolp.•」・」1J_%>1'内SolutionExplore?EjCwViewPropertiesfrmMainSystem.v/cdcnfForE〉・FormM园亘/I口Right!oLeftLayoutShoxviconSho%MnTa$kbar由SizeSizeGripStyleStdrtPo&itionTagTextTcpMost227.-21引用Meteolnfo类库:
SolutionExplorer-Solution'MeteoInfoDem...▼,X唱I睿国S-L?References,MeteoInfoC口System••••…•口System.Corei…,口System.Data••…QSystem.Data.DataSetExtensions••…•口System.DeploymentJJ口System.Drawing■■英SolutionExplorer|阿英SolutionExplorer|阿Cl3e添加Meteolnfo类库中的控件ChooseToolboxItems•NETFrameworkComponentsCOMComponentsWPFComponentsNameNamespaceAssemblyNameDirectory0LoginSystem.Web.UI.WebContr...System.Web()GlobalAss...口LoginNameSystem.Web.UI.WebContr...System.Web()GlobalAss...口LoginStatusSystem.Web.UI.WebContr...System.Web()GlobalAss...口LoginViewSystem.Web.UI.WebContr...System.Web()GlobalAss...0MainMenuSystem.Windows.FormsSystem.Windows.Fo...GlobalAss...Managementinstall...System.Management.Instr...System.Manageme...GlobalAss...团MapLayoutMeteoInfoC.LayoutMeteoInfoC()D:\MyProg...团MapViewMeteoInfoC.MapMeteoInfoC()D:\MyProg...口MarshalByValueCo...System.ComponentModelSystem()GlobalAss...团MaskedTextBoxSystem.Windows.FormsSystem.Windows.Fo...GlobalAss...AAouL1。乂Tovz+QcvAyr*AA;/-ycuA\/;um1Qou;/■QouUlcbolAuuJ▼Filter:ClearAccessDataSourceLanguage:InvariantLanguage(InvariantCountry)中Version:Browse...OK控件添加后:
宓ToolStripUToolStripContainerToolTipXTrackBarD-.3a"TreeView联VScrollBar国WebBrowser濠MapLayout演LayersLegend辞MapView□CommonControlsToolbox▼4XPointerButtonCheckBoxCheckedListRiozComboBoxDateTimePicker2、添加Meteolnf。类库中的主要控件:在主窗体中添加菜单栏、工具栏、状态栏,以及一,个Splitcontainer和一个TabControL将tabControll的两个TabPage分别改名为Map和Layout:将LayersLegend控件加入Splitcontainer的左边(layersLegendl),将MapView控件添加到
tabControll的Map页面中(mapViewl),将MapLayout控件添加到tabControll的Layout页面中(mapLayoutl),控件的Dock属性设置为Fill。为了将这三个控件相互关联起来,首先要给layersLegendl添加一个MapFrame,点击layersLegendl属性中的MapFrames属性,在弹出的对话框中增加一个MapFrame:&MoteIn:oDeE。"fileEditViewProjeclBuildDebugDateToolsWindowHelp••J―,」Gd09・►T[.11二:-:l二73..:*/|「空&MoteIn:oDeE。"fileEditViewProjeclBuildDebugDateToolsWindowHelp••J―,」Gd09・►T[.11二:-:l二73..:*/|「空*A,•力:七・二』L•.一」IW,Mapview▼1哥于23%田J,XrodbqxfrmMain.es[Design]。StartPageProperties▼,layenLegendlMetecInfoC.Legend.LayersLegerdMeteolnfoDemoMap"rameCollectonEditorAutoSaollMtnSzeAutoStzeMembers:MQtooInfoC.Lfigood-MapfnamoMapFrameNameNeiVMapFrame0Grid0f3v*6ridlabdTrueDra**GridlineFlic*DrasvCridTickLineFalreBGridFontArial,£ptGrtdLineColor■BlackGridLineSixe1GridLineStyteDashGridXDeit10GridXOrigin0GridYDeh10GridVOrigin0□MiteActiveFalxChockedTrue国21一OK[CanedAutoSireModeGrowOnlyAutoValidateEndblePreventFocusChencBackColor口WhiUBackgrcurdlmoge(none)BackgroundlmAgeLAyouTileBordefStyleNoneCau&MValidationTrueContextMenuStrip(none)CurrentMapFremeObjectreferencenotSGtCursorDefaultDoricFillEnabledTrueBFomArial.8PtForeColor■BhckGenerateMemberTrueIrneModeNoControlhLayoutViewFalseBLocation0,0LockedFalseMapFrame^(Collection)MaplAyout(none)EMargin山MaximuntSixe0.03MinimumStze0.0ModifiersPrivateBPadding0.0,0,0・FakeMeieoInfoC.LegerdAlapFramepropenjw:将刚添加的MapFrame的MapView属性设置为mapViewl,Active属性设置为True:将layersLegendl的MapLayout属性设置为mapLayoutl:
3、实现MapView和MapLayout切换:在tabControll_SelectedlndexChanged事件中添加如下代码:privatevoidtabControll_SelectedlndexChanged(objectsender,EventArgse)(if(tabControll.Selectedlndex==1)//MapLayout{layersLegendl.lsLayoutView=true;mapLayoutl.PaintGraphics();mapLayoutl.Refresh();)elseif(tabControll.Selectedlndex==0)//MapviewlayersLegendl.lsLayoutView=false;
mapViewl.lsLayoutMap=false;mapViewl.ZoomToExtent(mapViewl.ViewExtent);4、添加图层:在工具栏中加一个添加图层按钮,并在其Click事件中添加如下代码:privatevoidTSB_AddLayer_Click(objectsender,EventArgse)OpenFileDialogaDlg=newOpenFileDialog();"Supported(*.shp)|*.shp|WMPaDIg.Filter"Supported(*.shp)|*.shp|WMPFormats1*.shp;*.wmp;*.bln;*.bmp;*.gif;*.jpg;*.tif;*.png|ShapeFileFile(*.wmp)|*.wmp|BLNFile(*.bln)|*.bln|"+"BitmapImage(*.bmp)|*.bmp|GifImage(*.gif)|*.gif|JpegImage(*JPg)l*JPg|TifImage(*.tif)|*.tif|Pnglamge(*.png)|*.png|AllFiles(*.*)1*.*";if(aDlg.ShowDialog()==DialogResult.OK){stringaFile=aDIg.FileName;MapLayeraLayer=MapDataManage.OpenLayer(aFile);layer
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水环境治理监测技术方案
- 毕业论文(设计)致谢10篇
- 拆除工程设备调度优化管理方案
- 形容词修饰名词的位置顺序(教学设计)-2023-2024学年译林版(三起)英语六年级下册
- 2025年儿科传染病诊疗知识综合考核答案及解析
- 2.7 探索勾股定理(1) 说课稿 2024-2025学年浙教版数学八年级上册
- 2025年皮肤科痤疮治疗论述题考试答案及解析
- 2025年胸外科手术常见操作规范评估试卷答案及解析
- 2025年急诊医学多发伤急救流程应急演练答案及解析
- 2025年肿瘤科化疗药物副作用处理策略答案及解析
- 2025年中级注册安全工程师《安全生产法律法规》十年真题考点
- 2025年秋季小学三年级上册语文教学计划
- 2025未签合同劳动争议仲裁申请书
- 2025年职业指导师考试试卷:实践操作
- 幼儿园2025师德师风应知应会知识测试试题(附答案)
- 2025年北京中考真题英语试题及答案
- 搬运工具管理办法
- 撤资协议范本(2025版)
- 2025年浙江省中考社会试题卷(含答案)
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战
- 2025年公需课考试题库(附答案)
评论
0/150
提交评论