许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  Engine开发:给WPF窗体添加Esri地图控件(MapControl、ToolbarControl、TOCControl)

Engine开发:给WPF窗体添加Esri地图控件(MapControl、ToolbarControl、TOCControl)

阅读数 19
点赞 0
article_banner

(1)给项目添加 system.windows.forms .integration引用

(2). xaml 页面

<WindowsFormsHost Name="wfhToolBarCtrl" Grid.Row="0"/> <WindowsFormsHost Name="wfhMapCtrl" Grid.Row="1"/>

(3).xaml.cs页面

        private IMapControl2 _MapCtrl;//地图控件        private ITOCControl _TocCtrl;//图层树(没用到)        private IToolbarControl2 _ToolBar;//工具条          /// <summary>        /// 注册地图控件、工具条初始化        /// </summary>        private void InitMapControl()        {            try            {                if (_MapCtrl != null)                {                    return;                }                AxMapControl axmapctrl = new AxMapControl();                //AxTOCControl axtocctrl = new AxTOCControl();                AxToolbarControl axToolbarControl = new AxToolbarControl();                axmapctrl.OcxState = null;                axToolbarControl.OcxState = null;                   axmapctrl.BeginInit();                wfhMapCtrl.Child = axmapctrl;                wfhToolBarCtrl.Child = axToolbarControl;                _MapCtrl = axmapctrl.Object as IMapControl2;                _ToolBar = axToolbarControl.Object as IToolbarControl2;                _ToolBar.SetBuddyControl(_MapCtrl);                //添加工具项                //ESRI.ArcGIS.SystemUI.ICommand addcommand = new ControlsAddDataCommandClass();                //_ToolBar.AddItem(addcommand, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                ESRI.ArcGIS.SystemUI.ICommand command = new ControlsMapFullExtentCommandClass();                _ToolBar.AddItem(command, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                ESRI.ArcGIS.SystemUI.ICommand command2 = new ControlsMapPanToolClass();                _ToolBar.AddItem(command2, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                ESRI.ArcGIS.SystemUI.ICommand command3 = new ControlsMapZoomOutToolClass();                _ToolBar.AddItem(command3, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                ESRI.ArcGIS.SystemUI.ICommand command4 = new ControlsMapZoomInToolClass();                _ToolBar.AddItem(command4, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                ESRI.ArcGIS.SystemUI.ICommand command5 = new ESRI.ArcGIS.Controls.ControlsMapIdentifyToolClass();                _ToolBar.AddItem(command5, -1, -1, false, 0, esriCommandStyles.esriCommandStyleIconOnly);                //_TocCtrl = axToolbarControl.Object as ITOCControl;                //_TocCtrl.SetBuddyControl(_MapCtrl);            }            catch (Exception ex)            {                MessageBox.Show(ex.Message);            }        }

效果图:


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删


相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空